Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从Swift数组中检索固定数量的数据_Swift - Fatal编程技术网

从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"]