我是 swift 的新手,我正在尝试实现一个简单的函数,该函数将最小和最大数字作为输入并返回一个包含所有数字的数组。我收到一个错误 //错误:对泛型类型“Array”的引用需要 <...> 中的参数 我可以知道我错过了什么吗?
func serialNumberLimits(minimumNumber n1:Int, maximumNumber n2:Int) -> Array {
// Initialized an empty array
var array = Int[]()
//Initialized a "Temp" variable
var temp:Int = 0
for index in n1..n2 {
temp += n1
n1++
if index == 1 { array.insert(temp, atIndex: 0) }
else { array.insert(temp, atIndex: index-1) }
}
return array
}
最佳答案
使用以下函数
1)当你使用n1
在函数中并更改其值,因此将其声明为 var
因为所有参数都是 constants
默认在 swift 中
2) 使用 Array<Int>
因为它需要定义 swift 中的数组类型。Swift 是强类型语言,因此需要定义所有类型。
运行下面的代码,编译无误
func serialNumberLimits(var minimumNumber n1:Int, maximumNumber n2:Int) -> Array<Int> {
// Initialized an empty array
var array = Int[]()
//Initialized a "Temp" variable
var temp:Int = 0
for index in n1..n2 {
temp += n1
n1++
if index == 1 { array.insert(temp, atIndex: 0) }
else { array.insert(temp, atIndex: index) }
}
return array
}
关于ios - 快速实现功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24897267/