我如何做这样的事情?从数组中取前n个元素:
newNumbers = numbers[0..n]
目前得到以下错误:
error: could not find an overload for 'subscript' that accepts the supplied arguments
编辑:
这里是我工作的功能。
func aFunction(numbers: Array<Int>,position: Int) -> Array<Int> { var newNumbers = numbers[0...position] return newNumbers }
这适用于我:
原文链接:https://www.f2er.com/swift/321164.htmlvar test = [1,2,3] var n = 2 var test2 = test[0..<n]
你的问题可能是你如何声明你的数组开始。
编辑:
要修复你的函数,你必须将你的Slice转换为一个数组:
func aFunction(numbers: Array<Int>,position: Int) -> Array<Int> { var newNumbers = Array(numbers[0..<position]) return newNumbers } // test aFunction([1,3],2) // returns [1,2]