乍一看,只需将集合转换为数组并将其传递给方法,但这不起作用:
val toTypedArray = Arrays.asList("a", "b").toTypedArray()
Paths.get("", toTypedArray) // <- compilation error here
没有解决方法???
答案 0 :(得分:17)
Array
可以作为vararg
参数传递,方法是将*
添加到其中:
Paths.get("", *toTypedArray)
它被称为传播运算符,正如我在另一个问题here中所描述的那样。
List
的实例可以转换为vararg
,如下所示:
val listAsArr = listOf("a", "b").toTypedArray()
Paths.get("", * listAsArr)