Kotlin:如何创建一个字符串类型的二维数组
问题描述:
我正在学习kotlin。我需要创建一个可以容纳单词,特殊字符和数字的二维数组。某些地方我发现这段代码 THIS 问题在于它只能容纳Int。 当我试图用“字符串”替换关键字“IntArray”。它返回一个错误 ERROR 有人可以帮我创建一个10×8 Arrray可容纳字符串科特林Kotlin:如何创建一个字符串类型的二维数组
答
有在科特林(here's an explanation why)没有StringArray
,使用Array<String>
代替。
如果你创建阵列可以提供数组项,然后创建阵列可以做到:
val result = Array(10) { i ->
Array(8) { j ->
"the String at position $i, $j" // provide some initial value based on i and j
}
}
println(result[0][3]) // Prints: the String at position 0, 3
否则,您可以使用一些默认String
值:
val result = Array(10) { Array(8) { "" } }
或者创建填充了null
值的内部数组(注意:您将不得不使用deal with nullability,您将无法将项目作为非空值使用):
val result = Array(10) { arrayOfNulls<String>(8) } // The type is `Array<Array<String?>>
result[0][0] = "abc"
println(result[0][0]!!.reversed()) // Without `!!`, the value is treated as not-safe-to-use