从字符串引用局部变量

时间:2019-09-15 22:43:52

标签: kotlin

有没有一种方法可以通过传递字符串来表示变量名来表示局部变量名? 例如这样的东西

val arr1 = arrayOf(1,2,3,"Apple")
val arr2: Array<Int> = Array(6,{i -> i * 2})
val arr3: Array<Int> = Array<Int>(6,{i -> i+1})
val arr4 = arrayOf<Int>(1,2,3)
for (i in 1..4){
    val arrResult = java.util.Arrays.deepToString("arr${i}")
    println(arrResult)
}

1 个答案:

答案 0 :(得分:3)

这样的问题通常意味着您想使用字典。在这种情况下,数组就足够了:

fun main() {
    val arr0 = arrayOf(1,2,3,"Apple")
    val arr1: Array<Int> = Array(6,{i -> i * 2})
    val arr2: Array<Int> = Array<Int>(6,{i -> i+1})
    val arr3 = arrayOf<Int>(1,2,3)
    val arrs = arrayOf(arr0, arr1, arr2, arr3)
    for (i in 0..3) {
        val arrResult = java.util.Arrays.deepToString(arrs[i])
        println(arrResult)
    }
}