Swift学习笔记第三节:Set类型

1、代码

swift 复制代码
import Foundation

var set1: Set<Int> = [1, 2, 3, 4, 3]
print("定义1: \(set1)")
var set2 = Set(1...4)
print("定义2: \(set2)")
print("长度: \(set2.count)")
print("是否为空: \(set2.isEmpty)")
set1.insert(99)
set1.update(with: 33)
print("插入: \(set1)")
let (isInsert,val) = set1.insert(3)
print("是否插入成功: \(isInsert), 插入的值: \(val)")
set1.remove(4)
print("删除: \(set1)")
set1.removeAll()
print("删除所有: \(set1)")

let set3 = Set(1...7)
let set4 = Set(4...9)
let set5 = Set(2...4)
print("交集: \(set3.intersection(set4))")
print("并集: \(set3.union(set4))")
print("差集: \(set3.subtracting(set4))")
print("补集: \(set3.symmetricDifference(set4))")
print("是不是子集: \(set5.isSubset(of: set3))")
print("是不是超集: \(set3.isSuperset(of: set5))")
print("随机数: \(set3.randomElement() ?? -1)")
print("排序: \(set5.sorted())")

for item in set5 {
    print("遍历: \(item)")
}

for (index,value) in set5.enumerated() {
    print("索引: \(index), 值: \(value)")
}

set5.forEach{ item in
    print("遍历: \(item)")
}

2、运行结果

bash 复制代码
定义1: [3, 1, 4, 2]
定义2: [4, 2, 1, 3]
长度: 4
是否为空: false
插入: [3, 33, 99, 1, 4, 2]
是否插入成功: false, 插入的值: 3
删除: [3, 33, 99, 1, 2]
删除所有: []
交集: [4, 5, 7, 6]
并集: [6, 3, 2, 4, 5, 1, 7, 8, 9]
差集: [1, 3, 2]
补集: [3, 2, 1, 8, 9]
是不是子集: true
是不是超集: true
随机数: 1
排序: [2, 3, 4]
遍历: 2
遍历: 4
遍历: 3
索引: 0, 值: 2
索引: 1, 值: 4
索引: 2, 值: 3
遍历: 2
遍历: 4
遍历: 3
相关推荐
薛先生_0991 小时前
js学习语法第一天
开发语言·javascript·学习
Wilber的技术分享2 小时前
【LeetCode高频手撕题 2】面试中常见的手撕算法题(小红书)
笔记·算法·leetcode·面试
愚昧之山绝望之谷开悟之坡2 小时前
合格境外投资者
笔记
寒秋花开曾相惜4 小时前
(学习笔记)3.8 指针运算(3.8.3 嵌套的数组& 3.8.4 定长数组)
java·开发语言·笔记·学习·算法
是翔仔呐5 小时前
第11章 显示外设驱动:I2C协议OLED屏、SPI协议LCD屏字符/图片/中文显示
c语言·开发语言·stm32·单片机·嵌入式硬件·学习·gitee
_李小白5 小时前
【AI大模型学习笔记之平台篇】第五篇:Trae常用模型介绍与性能对比
人工智能·笔记·学习
承渊政道5 小时前
【优选算法】(实战体会位运算的逻辑思维)
数据结构·c++·笔记·学习·算法·leetcode·visual studio
AI-Ming5 小时前
程序员转行学习 AI 大模型: 踩坑记录:服务器内存不够,程序被killed
服务器·人工智能·python·gpt·深度学习·学习·agi
m0_716765235 小时前
C++提高编程--STL常用容器(set/multiset、map/multimap容器)详解
java·开发语言·c++·经验分享·学习·青少年编程·visual studio
2501_945318495 小时前
零基础学习AI的选型指南:CAIE认证与编程型AI认证如何取舍
人工智能·学习