Java ArrayList到Kotlin数组

Sim*_*gan 22 arrays arraylist kotlin

有没有简单的方法将Java ArrayList转换为Kotlin数组?以下代码:

fun test(): Array<String> {
  val elems = ArrayList<String>()
  return elems.toArray()
}
Run Code Online (Sandbox Code Playgroud)

给出错误:

main.kt:2:15: error: unresolved reference: ArrayList
  val elems = ArrayList<String>()
              ^
Run Code Online (Sandbox Code Playgroud)

我正在解析一些JSON并且不知道我最终会有多少元素,但是一旦我读完它们,我就不需要以任何方式修改数据了所以我想我会选择Kotlin数组作为数据类型.

bas*_*hor 71

尝试使用扩展功能toTypedArray,如:

fun test(): Array<String> {
    val elems = arrayListOf<String>()
    return elems.toTypedArray()
}
Run Code Online (Sandbox Code Playgroud)

  • 这个答案对于被问到的问题是正确的.@ diesieben07的另一个答案中的注释提出了有关列表与数组的有效点,但这个答案是使用数组时的正确行为. (7认同)