面试题答案
一键面试高阶函数概念
高阶函数(Higher - order function)是指接收一个或多个函数作为参数,或者返回一个函数的函数。在Swift中,许多标准库函数都是高阶函数,这使得代码可以更简洁、更具表达力,同时也体现了函数式编程的思想。
示例代码
let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
// 使用map将数组中的每个元素翻倍
let doubledNumbers = numbers.map { $0 * 2 }
// 使用filter过滤出大于10的数
let filteredNumbers = doubledNumbers.filter { $0 > 10 }
// 使用reduce计算这些数的总和
let sum = filteredNumbers.reduce(0, +)
print(sum)
上述代码通过map
将数组numbers
中的每个元素翻倍,接着用filter
过滤出大于10的元素,最后通过reduce
计算这些过滤后元素的总和。也可以将这些操作链式调用,更加简洁:
let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
let sum = numbers.map { $0 * 2 }.filter { $0 > 10 }.reduce(0, +)
print(sum)