Swift字典的randomElement()方法
randomElement()
方法返回字典中的一个随机键-值对。
示例
// 创建一个包含三个元素的字典
var information = ["Charlie": 54, "Harvey": 38, "Donna": 34]
// 使用 randomElement() 获取随机元素
var result = information.randomElement()!
// 打印更新后的字典
print(result)
// 输出: (key: "Harvey", value: 38)
randomElement() 语法
randomElement()
方法的语法如下:
dictionary.randomElement()
这里,dictionary
是 Dictionary
类的对象。
randomElement() 参数
randomElement()
方法不接受任何参数。
randomElement() 返回值
randomElement()
方法返回字典中的一个随机元素。
注意: randomElement()
方法返回一个可选值,因此我们需要对其进行解包。有不同的技巧来解包可选值。要了解更多关于可选值的信息,请访问 Swift 可选值。
示例1:Swift randomElement()
// 创建一个包含三个元素的字典
var information = ["Carlos": 1999, "Judy": 1992, "Nelson": 1987]
// 获取随机元素 ,不解包可选值
print(information.randomElement())
// 获取随机元素,并解包可选值
print(information.randomElement()!)
输出
Optional((key: "Carlos", value: 1999))
(key: "Carlos", value: 1999)
在上面的示例中,我们创建了一个名为 information
的字典。请注意以下内容:
information.randomElement()
- 因为我们没有解包可选值,所以该方法返回Optional((key: "Carlos", value: 1999))
information.randomElement()!
- 因为我们使用了!
来强制解包可选值,所以该方法返回(key: "Carlos", value: 1999)
要了解更多关于强制解包的信息,请访问 强制解包可选值。
示例2:使用 ?? 运算符与 randomElement()
// 创建一个包含两个元素的字典
var info1 = ["Uikit": 2001, "Swiftui": 2019]
// 从 info1 返回随机元素
print(info1.randomElement() ?? "Empty")
// 创建一个空字典
var info2 = [String:Int]()
// 从 info2 返回随机元素
print(info2.randomElement() ?? "Empty")
输出
(key: "Swiftui", value: 2019)
Empty
在这里,nil-coalescing operator ??
解包了可选字典 info1
和 info2
,如果它们包含一个值,否则返回默认值 "Empty"
。