如何将intArray转换为Kotlin中的ArrayList <Int>?
从
val array = intArrayOf(5, 3, 0, 2, 4, 1, 0, 5, 2, 3, 1, 4)
我需要转换为ArrayList<Int>
我曾尝试array.toTypedArray()
但它转换为Array<Int>
而不是
你可以使用toCollection
函数,并指定ArrayList
作为一个可变的集合来填充:
val arrayList = intArrayOf(1, 2, 5).toCollection(ArrayList())
您可以通过一个简单的toList
调用来获取List<Int>
,如下所示:
val list = intArrayOf(5, 3, 0, 2).toList()
但是,如果你确实需要ArrayList
你也可以创建它:
val list = arrayListOf(*intArrayOf(5, 3, 0, 2).toTypedArray())
或者按照@Ilya的建议使用更多的惯用Kotlin API:
val arrayList = intArrayOf(1, 2, 5).toCollection(ArrayList())
或者如果你想自己做上面的事情,并保存一些分配:
val arrayList = intArrayOf(5, 3, 0, 2).let { intList -> ArrayList<Int>(intList.size).apply { intList.forEach { add(it) } } }
- 如何安排频繁的后台工作,支持牛轧糖以上的支持?
- IntelliJ的想法,一次测试多个模块,只有一个模块的文物都包括在内
- 如何使用Hibernate将UUID共享为两个表中的主键?
- 使用ant与kotlin编译器jar进行连接时发生Java编译器错误
- 在Android Java / Kotlin中,是否实现了一个接口直接访问嵌套类的本地变量
- Java vs Kotlin – 同一个类中的Spring @Async方法
- Kotlin&Hibernate IllegalArgumentException:无法将字符串字段Job.name设置为Job
- Android室错误:Dao类必须用@Dao标注
- Kotlin获取types为字符串