跳到主要内容

Swift数组sort()方法

sort()方法按特定顺序(升序或降序)对数组的项目进行排序。

示例

var numbers = [1, 3, 8, 5, 2]

// 对数字数组进行排序
numbers.sort()

print(numbers)

// 输出: [1, 2, 3, 5, 8]

sort()语法

数组sort()方法的语法如下:

array.sort(by: operator)

这里,arrayArray类的对象。

sort()参数

sort()方法可以接受一个参数:

  • operator(可选)- 如果我们传递大于号操作符 >,则排序后的数组将被反转(或按降序排序)。

sort()返回值

sort()方法不返回任何值。相反,它更改了原始数组的顺序。

示例 1:Swift数组sort()

// 字符串数组
var names = ["Adam", "Jeffrey", "Fabiano", "Danil", "Ben"]

// 对names数组进行排序
names.sort()

print(names)

// 整数数组
var priceList = [1000, 50, 2, 7, 14]

// 对priceList数组进行排序
priceList.sort()

print(priceList)

输出

["Adam", "Ben", "Danil", "Fabiano", "Jeffrey"]
[2, 7, 14, 50, 1000]

在这里,我们可以看到names数组按字符串升序排序。例如,"Adam" 在 "Danil" 之前,因为 "A" 在 "D" 之前。

同样,priceList 数组也按升序排序。

示例 2:降序排序

// 字符串数组
var names = ["Adam", "Jeffrey", "Fabiano", "Danil", "Ben"]

// 对names数组进行排序
names.sort(by: >)

print(names)

// 整数数组
var priceList = [1000, 50, 2, 7, 14]

// 对priceList数组进行排序
priceList.sort(by: >)

print(priceList)

输出

["Jeffrey", "Fabiano", "Danil", "Ben", "Adam"]
[1000, 50, 14, 7, 2]

在这里,为了按降序排序元素,我们将>操作符传递给sort()方法。

注意:我们也可以传递<操作符以按升序排序元素。但是,如果不传递任何参数,sort()方法将默认按升序排列元素。