Kotlin 将 List 转换为 vararg



我有类型List<UnitWithComponents>的输入数据

class UnitWithComponents {
var unit: Unit? = null
var components: List<Component> = ArrayList()
}

我想将数据转换为varargUnit

目前我正在做*data.map { it.unit!! }.toTypedArray().有没有更好的方法?

fun foo(vararg strings: String) { /*...*/ }

foo(strings = arrayOf("a", "b", "c"))
val list: MutableList<String> = listOf("a", "b", "c") as MutableList<String>
foo(strings = list.map { it }.toTypedArray())

Kotlin 函数不允许使用命名参数 (*.java(

因此,在这种情况下,您应该替换:

寄件人:strings = list.map { it }.toTypedArray()

收件人:*list.map { it }.toTypedArray()

GL

不,这是正确的方法(假设你想在null列表的某些元素时抛出异常it.unit(。

相关内容

  • 没有找到相关文章

最新更新