首页 > 解决方案 > 当我尝试将字符列表转换为整数列表时,值会发生变化。我该如何解决?

问题描述

fun main(args: Array<String>) {

    val list = arrayListOf<Char>()
    val string: String = "731671765313306249192251196744265747423553491"
        loop@ for (char in string) {
            list.add(char)
            if (list.size == 13) {
                break@loop
            }
        }
    val trueList = list.map { it.toInt() }
    println(list)
    println(trueList)
}

每当我尝试打印出来时,值都会改变。它不是打印出“7,3,1 等”,而是打印出“55,51,59 等”。

这是我正在谈论的一个片段。我首先打印了字符列表,然后打印了整数列表。

[7, 3, 1, 6, 7, 1, 7, 6, 5, 3, 1, 3, 3] // List of the characters
[55, 51, 49, 54, 55, 49, 55, 54, 53, 51, 49, 51, 51] // List of integers

标签: listkotlintype-conversion

解决方案


它打印出每个单独字符的 ascii 值而不是字符串表示形式。

https://ascii.cl/

var list = string.chunked(1).map { it.toInt() }

推荐阅读