从
val array = intArrayOf(5, 3, 0, 2, 4, 1, 0, 5, 2, 3, 1, 4)
Run Code Online (Sandbox Code Playgroud)
我需要转换为 ArrayList<Int>
我试过了 array.toTypedArray()
但它Array<Int>转而改为
Ily*_*lya 46
您可以使用toCollection函数并指定ArrayList为可变集合来填充:
val arrayList = intArrayOf(1, 2, 5).toCollection(ArrayList())
Run Code Online (Sandbox Code Playgroud)
mie*_*sol 10
您可以List<Int>通过简单的toList调用获得:
val list = intArrayOf(5, 3, 0, 2).toList()
Run Code Online (Sandbox Code Playgroud)
但是如果你真的需要,ArrayList你也可以创建它:
val list = arrayListOf(*intArrayOf(5, 3, 0, 2).toTypedArray())
Run Code Online (Sandbox Code Playgroud)
或者使用@Ilya建议的更多惯用的Kotlin API :
val arrayList = intArrayOf(1, 2, 5).toCollection(ArrayList())
Run Code Online (Sandbox Code Playgroud)
或者,如果您想自己完成上述操作并节省一些分配:
val arrayList = intArrayOf(5, 3, 0, 2).let { intList ->
ArrayList<Int>(intList.size).apply { intList.forEach { add(it) } }
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10260 次 |
| 最近记录: |