从Swift数组中检索固定数量的数据
我有从Swift数组中检索固定数量的数据,swift,Swift,我有var toPlotLines:[Int]=[200300400500600322435]我想从数组中检索前四个整数。我可以在不必循环使用Swift的情况下这样做吗。我尝试了这个graphView.graphPoints=toPlotLines[0..错误消息具有误导性。问题是toPlotLines[0..
var toPlotLines:[Int]=[200300400500600322435]
我想从数组中检索前四个整数。我可以在不必循环使用Swift
的情况下这样做吗。我尝试了这个graphView.graphPoints=toPlotLines[0..错误消息具有误导性。问题是toPlotLines[0..
不是数组
,而是:
表示任何数组、连续数组或其他ArraySlice的子序列的类数组类型
要创建“真实数组”,请使用
graphView.graphPoints=Array(toPlotLines[0..
从Array
到ArraySlice
当您为数组下标时,返回对象的类型为ArraySlice
:
let toPlotLines = [200, 300, 400, 500, 600, 322, 435] // type: [Int]
let arraySlice = toPlotLines[0 ..< 4] // type: ArraySlice<Int>
因此,可以很容易地从ArraySlice
获取新的Array
:
let toPlotLines = [200, 300, 400, 500, 600, 322, 435]
let arraySlice = toPlotLines[0 ..< 4]
let newArray = Array(arraySlice)
print(newArray) // prints: [200, 300, 400, 500]
通过执行toPlotLines[0。。
init<S : SequenceType where S.Generator.Element == _Buffer.Element>(_ s: S)
let toPlotLines = [200, 300, 400, 500, 600, 322, 435]
let arraySlice = toPlotLines[0 ..< 4]
let newArray = Array(arraySlice)
print(newArray) // prints: [200, 300, 400, 500]
let toPlotLines = [200, 300, 400, 500, 600, 322, 435]
let arraySlice = toPlotLines[0 ..< 4]
let stringArray = arraySlice.map { String($0) }
print(stringArray) // prints: ["200", "300", "400", "500"]