什么是 Swift Sets?2024 年 8 月 29 日 | 4 分钟阅读 Swift set 是一个简单的容器,可以在无序列表中保存多种数据类型的值。它不能存储相同的值两次。在这里,无序列表意味着您不会以与您在集合中输入项目相同的方式获得项目。 Swift Sets vs. Swift 数组Swift set 和 Swift 数组之间的主要区别在于 Swift set 无法像 Swift 数组那样存储相同的值两次。 Swift sets 确保一个项目只出现一次,并且项目的顺序并不重要。 存储在 Swift set 中的值必须是可哈希的。可哈希意味着它必须提供一个 hashValue 属性。 HashValue 用于访问集合的元素,因为集合是无序的。 所有 Swift 基本数据类型(如 String、Int、Double 和 Bool)默认情况下都是可哈希的,并且可以用作集合值类型。我们还可以在 Swift 中创建我们的 Hashable 类型,该类型可以存储在集合中。 如何在 Swift 中声明一个集合?我们可以声明一个可以存储一些值的集合。 示例输出 [2, 4, 9, 5, 6, 7, 3, 1, 8] 声明一个包含重复值的集合输出 [2, 4, 5, 3, 1, 8] 在上面的程序中,我们输入了重复值 5 和 8。但在输出中,我们可以看到重复的值已被删除。 在 Swift 中访问集合元素我们不能像访问 Swift 中数组的元素那样访问集合的元素,因为集合元素是无序的。 因此,我们必须使用其方法和属性或使用 for-in 循环来访问集合元素。 在 Swift 中访问所有集合元素示例输出 5 6 2 3 1 4 使用 remove() 方法访问选择性集合元素我们可以通过使用 remove() 方法从集合中访问选择性元素。 示例输出 Optional(5) [6, 2, 3, 1, 4] 在上面的程序中,您可以看到 remove() 方法返回一个可选字符串。建议按如下方式进行可选处理。 使用 remove() 方法的可选处理示例输出 5 [6, 2, 3, 1, 4] 在 Swift 中向集合添加新元素insert() 方法用于在 Swift 中向集合中添加新元素。 添加单个元素 示例输出 [2, 4, 5, 6, 7, 3, 1] 在上面的例子中,我们在一个预定义的集合中添加了一个新元素 7。 添加多个元素 示例输出 [10, 2, 4, 9, 5, 6, 7, 3, 1, 8] Swift 中的集合操作使用集合的另一个优点是它方便您执行集合操作,即并集、交集等。它与数学中的集合操作相同。 并集运算两个集合a和b的并集是集合a和集合b中所有元素的组合。它可以通过使用a.union(b)来访问。 示例输出 [8, 2, 9, 4, 5, 7, 6, 3, 1, 0] 交集运算两个集合a和b的交集是两个集合中都存在的元素的集合。它可以通过使用a.intercection(b)来访问。 示例输出 [7, 3] 减法运算两个集合a和b的减法是包含 a 的所有元素但不包含也属于 b 的元素的集合。它可以通过使用a.subtracting(b)来访问。 示例输出 [5, 9, 1] 对称差集运算两个集合a和b的对称差集是包含其中一个集合中的所有元素但不同时包含在两个集合中的元素的集合。它可以通过使用a.symmetricDifference(b)来访问。 示例输出 [5, 6, 9, 8] 一些内置函数和属性
下一话题Swift 闭包 |
我们请求您订阅我们的新闻通讯以获取最新更新。