乍一看,只需要将collection转换为array并将其传递给method即可,但这是行不通的:
val toTypedArray = Arrays.asList("a", "b").toTypedArray()
Paths.get("", toTypedArray) // <- compilation error here
没有解决方法???
最佳答案
可以通过在其前面添加Array
来将vararg
作为*
参数传递:
Paths.get("", *toTypedArray)
正如我在另一个答案here中所描述的,它称为传播算子。可以将
List
的实例转换为vararg
,如下所示:val listAsArr =
listOf("a", "b").toTypedArray()
Paths.get("", *listAsArr)
关于java - 如何将Kotlin集合作为varargs传递?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46418550/