Ios 如何用另一个函数初始化一个类函数?
我试图初始化一个斐波那契数数组,以便以后可以在表视图中使用它们。现在,我正试图这样做,但遇到了一个问题:无法在fibonacciNumbers.append中使用“Int”类型的参数列表调用“append”Ios 如何用另一个函数初始化一个类函数?,ios,arrays,swift,code-generation,generator,Ios,Arrays,Swift,Code Generation,Generator,我试图初始化一个斐波那契数数组,以便以后可以在表视图中使用它们。现在,我正试图这样做,但遇到了一个问题:无法在fibonacciNumbers.append中使用“Int”类型的参数列表调用“append” class FibonacciNumbers { class func getTheFibonacciNumbers(allResults: NSArray) -> [FibonacciNumbers] { // Create an empty array of Fibo
class FibonacciNumbers {
class func getTheFibonacciNumbers(allResults: NSArray) -> [FibonacciNumbers] {
// Create an empty array of Fibonacci Numbers to append to from this list
var fibonacciNumbers = [FibonacciNumbers]()
var number = generate()
// Store the results in our table data array
if allResults.count>0 {
for result in allResults {
fibonacciNumbers.append(number.next()) //Getting issue here
}
}
return fibonacciNumbers
}
}
func generate() -> GeneratorOf<Int> {
var current = 0, next = 1
return GeneratorOf<Int> {
var ret = current
current = next
next = next + ret
return ret
}
}
对于生成器,next返回一个可选值。但是,由于生成器设计为永不停止生成数字,因此您可以安全地使用next
另一个问题是生成函数生成一个整数生成器,这意味着数字。下一步!将是一个Int。因此您的fibonacciNumbers数组需要是[Int]
不知羞耻的插件:这行不通-他仍然试图在fibonaccinumbers数组中添加Int。谢谢!我以前没有看过你的网站,但我现在正在查看。但是,您在这里提供的解决方案并没有解决这个问题。我仍然有点困惑,因为如果我将Fibonacciumbers数组更改为[Int],则会出现错误,因为类的返回类型是Fibonacciumbers。如果我将两个返回类型都更改为[int],则没有编译问题,但在调用它时得到的是空数组。如果得到的是空数组,则可能allResults.count为零。你所包含的斐波那契数的数量与此相关。所有结果的目的是什么?你是对的。所有的结果都不需要存在。我需要重写这个。谢谢你的帮助