Swift 程序从 Set 中获取随机元素
swiftserver side programmingprogramming更新于 2025/9/21 16:52:17
本教程将讨论如何编写 Swift 程序从 Set 中获取随机元素。
Set 是 Swift 中的主要集合类型。它是一个无序集合,存储相同数据类型的唯一值。不允许在同一个 Set 中存储不同类型的值。Set 可以是可变的,也可以是不可变的。
语法
以下是 Set 的语法 -
var name : Set = [element1, element2, element3]
要从 Set 中获取随机元素,Swift 提供了一个名为 randomElement() 的内置函数。此函数从给定的 Set 中返回一个随机元素。这里返回的对象类型为 Optional
以下是相同的演示 -
输入
假设给定的输入是 -
MySet = [34, 5, 6, 78, 12, 3]
输出
所需的输出将是 -
随机数 = 12
语法
以下是语法 -
SetName.randomElement()
算法
以下是算法 -
步骤1 − 声明并初始化一个 Set 并赋值。
步骤 2 − 使用 randomElement() 查找随机元素 −
var randEle = myNum.randomElement()!
此函数将返回 Optional 类型的值,因此您可以使用 ! 或 let 将其转换为所需的数据类型。
步骤 3 − 打印输出
示例 1
以下程序演示如何从 Set 中获取随机元素。
import Foundation import Glibc // Creating a Set of string Type var myNum: Set = [3, 56, 1, 98, 23, 4] // 获取随机元素 // 这里我们使用 ! 进行类型转换 // 将值转换为整数类型 var randEle = myNum.randomElement()! print("Set: ", myNum) print("Random Element: ", randEle)
输出
Set: [56, 4, 1, 98, 23, 3] Random Element: 98
在上面的代码中,我们有一个整数类型的集合 [1, 56, 98, 23, 4, 3]。现在我们使用 randomElement() 函数查找随机元素。
var randEle = myNum.randomElement()!
因此,随机元素为 4。
示例 2
以下程序展示了如何从集合中获取随机元素。
import Foundation import Glibc // Creating a Set of string Type var myNames: Set = ["Susma", "Punita", "Piku", "Poonam", "Soona"] // Creating an empty Set var mySet = Set<String>() // Getting random elements // Here we use let to type cast the // value into the required data type print("Set 1: ", myNames) if let setSize1 = myNames.randomElement(){ print("Random Element: ", setSize1) } else{ print("Random Number: Nil") } print("Set 2: ", mySet) if let setSize2: String = mySet.randomElement(){ print("Random Element: ", setSize2) } else{ print("Random Number: Nil") }
输出
Set 1: ["Poonam", "Soona", "Susma", "Piku", "Punita"] Random Element: Susma Set 2: [] Random Number: Nil
在上面的代码中,我们有两个集合:myNames 是字符串类型 ["Piku", "Punita", "Poonam", "Soona", "Susma"],mySet 是一个空集。现在我们使用 randomElement() 从集合中获取一个随机元素 -
setSize1 = myNames.randomElement() let setSize2: String = mySet.randomElement()
因此,myName 集合中的随机元素是 Susma,而 mySet 中的随机元素为 nil,因为这个集合是空的。