Swift 创建一个函数,返回整数数组的双倍值
我刚刚开始学习swift,并被函数所困扰。有人能帮忙吗Swift 创建一个函数,返回整数数组的双倍值,swift,Swift,我刚刚开始学习swift,并被函数所困扰。有人能帮忙吗 另外,如果你能给我推荐一些关于Swift的书给初学者,让我做一些简单的练习,我将不胜感激。(提前感谢)已经有这样的功能了。这叫地图。它接受一个闭包,该闭包将源数组的每个元素作为输入,并返回一个新值以在输出数组中使用 let ints = [1, 3, 5, 7, 9, 23, 57] let doubled = ints.map { return $0 * 2 } 或者,您可以编写自己的函数,该函数接受一个int数组并返回另一个int数
另外,如果你能给我推荐一些关于Swift的书给初学者,让我做一些简单的练习,我将不胜感激。(提前感谢)已经有这样的功能了。这叫地图。它接受一个闭包,该闭包将源数组的每个元素作为输入,并返回一个新值以在输出数组中使用
let ints = [1, 3, 5, 7, 9, 23, 57]
let doubled = ints.map { return $0 * 2 }
或者,您可以编写自己的函数,该函数接受一个int数组并返回另一个int数组:
func doubledInts(_ array: [Int]) -> [Int] {
var output = [Int]()
for value in array {
output.append(value *2)
}
return output
}
你也可以变得更花哨,让你的函数使用泛型来获取任何标量值(Int及其变体,如Int32、UInt32、Int8、Double、Float等)并返回一个相同类型的数组,但是如果你还不了解函数的基本知识,那么泛型就太离谱了
我从Apple iBook“Swift编程语言”中学习了Swift。我发现它非常有用,但您的理解可能会有所不同。要更改数组的值,您必须使用循环或
map
函数(有关后者的更多详细信息,请参阅)。对于初学者,我不建议使用map()
。我建议使用for循环来帮助学习基本算法。就像@Larme所说的,我也不建议从.map
开始,因为当你不熟悉基本知识时,很难理解它的逻辑。