Kotlin:将ArrayList <string!>转换为Array <string>

时间:2017-06-19 13:25:57

标签: kotlin

我正在尝试拆分用户输入的字符串。我的代码类似于以下内容:

val aList = Array(5, {Array<String>(2){ " " }})
aList[0] = ArrayList(input.nextLine().split(" "))  // `split` returns a List

但是这会导致以下错误: error: type inference failed. Expected type mismatch: inferred type is ArrayList<String!> but Array<String> was expected

经过一番挖掘,我发现T!运算符意味着T or T?。如何将ArrayList<String!>投射到Array<String>

1 个答案:

答案 0 :(得分:8)

ArrayList<T>Array<T>completely different types,所以,正式来说,你不能只是演员。

但是,您可以使用.toTypedArray()List<T>转换为Array<T>

aList[0] = input.nextLine().split(" ").toTypedArray()