Swift集合的sorted()方法
sorted()
方法可以按照指定的顺序(升序或降序)对集合中的项进行排序。
示例
var numbers: Set = [1, 3, 8, 5, 2]
// 对 numbers 集合进行排序
var result = numbers.sorted()
print(result)
// 输出: [1, 2, 3, 5, 8]
sorted() 语法
集合 sorted()
方法的语法如下:
set.sorted(by: operator)
这里,set
是 Set
类的一个对象。
sorted() 参数
sorted()
方法可以接受一个参数:
- operator(可选) - 如果我们传递大于号
>
,集合会被反转(或按降序排列)
sorted() 返回值
sorted()
方法返回一个已排序的数组。
示例 1:Swift 集合排序
// 字符串集合
var names: Set = ["Adam", "Jeffrey", "Fabiano", "Danil", "Ben"]
// 对 names 集合进行排序
var result1 = names.sorted()
print(result1)
// 整数集合
var priceList: Set = [1000, 50, 2, 7, 14]
// 对 priceList 集合进行排序
var result2 = priceList.sorted()
print(result2)
输出
["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.sorted(by: >)
print(names)
// 整数集合
var priceList = [1000, 50, 2, 7, 14]
// 对 priceList 集合进行排序
priceList.sorted(by: >)
print(priceList)
输出
["Jeffrey", "Fabiano", "Danil", "Ben", "Adam"]
[1000, 50, 14, 7, 2]
在这里,为了按降序排序元素,我们向 sorted()
方法传递了 >
运算符。
注意: 我们也可以传递 <
运算符以按升序排序元素。但是,如果我们不传递任何参数,sorted()
方法将默认以升序排列元素。