可以在Kotlin中进行类似于Python的参数解包吗?例如.

>>> a = [1,2,3]
>>> b = [*a,4,5,6]
>>> b
[1, 2, 3, 4, 5, 6]

I know that it is possible in Kotlin as follows:

>>> listOf(1, 2, 3, *listOf(4,5,6).toTypedArray())
[1, 2, 3, 4, 5, 6]

感觉在Kotlin 有更简单的方法.有什么 idea 吗?

推荐答案

The spread operator works on arrays, so you can do this:

listOf(1, 2, 3, *(arrayOf(4, 5, 6)))

Kotlin相关问答推荐

如何使用收件箱文件中的类运行Kotlin应用程序

Lambda和普通Kotlin函数有什么区别?

用浮点数或十进制数给出错误答案的阶乘计算

我可以检测一个函数是否在Kotlin中被递归调用(即,重入)吗?

Kotlin扩展函数未调用Hibernate/JPA中的重写函数

为什么 Kotlin 中没有 init 块的注释

区分函数和扩展

Kotlin 启动与启动(Dispatchers.Default)

通过顺序多米诺骨牌操作列表管理对象的最佳方法是什么?

为什么没有remember 的 mutableStateOf 有时会起作用?

这是什么 Kotlin 类型:(String..String?)

Saripaar formvalidation 在 kotlin 中第二次不起作用

DatabaseManager_Impl 不是抽象的,不会覆盖 RoomDatabase 中的抽象方法 clearAllTables()

Android Studio 将 Java 转换为 Kotlin 错误无法推断此参数的类型

在Kotlin中不带类直接引用枚举实例

在kotlin中,如何模拟封装回调函数?

在Kotlin中传递并使用函数作为构造函数参数

在 kotlin 中,如何将主构造函数中的属性设置器设为私有?

Kotlin 中内部可见性修饰符的范围

如何在 Kotlin 中将串联转换为模板