在Swift中,数组切片返回types似乎不是

我正在切分string数组并将其设置为[String]variables,但types检查器正在抱怨。 这是一个可能的编译器错误?

 var tags = ["this", "is", "cool"] tags[1..<3] var someTags: [String] = tags[1..<3] 

截图

使用范围下标数组不会返回一个数组,而是一个切片。 尽pipe你可以创build一个数组。

 var tags = ["this", "is", "cool"] tags[1..<3] var someTags: Slice<String> = tags[1..<3] var someTagsArray: [String] = Array(someTags) 
 var tags = ["this", "is", "cool"] var someTags: [String] = Array(tags[1..<3]) println("someTags: \(someTags)") // "someTags: [is, cool]" 

你也可以这样做来得到一个新的片段数组:

 var tags = ["this", "is", "cool"] var someTags = [String]() someTags += tags[1..<3] println(someTags[0]) //prints ["is", "cool"] 
Interesting Posts