Swift 数组 map()

map() 方法通过对数组中的每个元素应用相同的操作来转换数组。

示例

var numbers = [1, 2, 3, 4]

// add 2 to each element var result = numbers.map({ $0 + 2})
print(result) // Output: [3, 4, 5, 6]

map() 语法

map() 方法的语法是

array.map(transform)

其中,arrayArray 类的一个对象。


map() 参数

map() 方法接受一个参数

  • transform - 一个闭包体,描述了要进行的转换类型。

map() 返回值

  • 返回一个包含转换后元素的新数组。

示例 1:Swift 数组 map()

var numbers = [1, 2, 3]

// multiply each elements by 3 var result = numbers.map { $0 * 3 }
print(result)

输出

[3, 6, 9]

在上面的示例中,我们使用 map() 方法转换了 numbers 数组。注意闭包的定义,

{ $0 * 3 }

这是一个简短的闭包,它将 numbers 的每个元素乘以 **3**。

$0 是指向传递到闭包的第一个参数的快捷方式。

最后,我们将转换后的元素存储在 result 变量中。


示例 2:使用 map() 将字符串数组转换为大写

// define array of Strings
var languages = ["swift", "java", "python"]

print("Before:", languages)

// use map() and uppercased() to transform array var result = languages.map { $0.uppercased() }
print("After:", result)

输出

Before: ["swift", "java", "python"]
After: ["SWIFT", "JAVA", "PYTHON"]

在上面的示例中,我们使用 map()uppercased() 方法转换了 languages 数组的每个元素。

uppercased() 方法将数组的每个字符串元素转换为大写。转换后的数组存储在 result 变量中。

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战