Swift学习笔记三(Dictionary 篇)

1 Dictionary 概念

  • 字典储存无序的互相关联的同一类型的键和同一类型的值的集合。
  • 字典类型的全写方式 Dictionary<Key, Value>,简写方式 [Key: Value],建议使用简写方式。
  • 字典的 key 必须是可哈希的。

2 Dictionary创建

2.1 初始器创建方式

2.2 简写创建方式

2.3 字面量创建方式

2.4 Dictionary的方法

  • 可以使用 count 只读属性来找出 Dictionary 拥有多少元素。
  • 使用布尔量 isEmpty 属性检查字典是否为空。

3 Dictionary的遍历

3.1 For-In 循环

  • 可以通过访问字典的 keys 和 values 属性来取回可遍历的字典的键或值的集合。
    • Swift 的 Dictionary 类型是无序的。要以特定的顺序遍历字典的键或值,使用键或值的
      sorted() 方法。

4 Dictionary的常用操作

4.1 添加或更新元素

  • 使用下标添加或更新元素。
  • 使用 updateValue(_:forKey:) 方法添加或更新元素,返回一个字典值类型的可选项值。

4.2移除元素

  • 使用下标脚本语法给一个键赋值 nil 来从字典当中移除一个键值对。
    • 使用 removeValue(forKey:)来从字典里移除键值对。这个方法移除键值对如果他们存在的
      话,并且返回移除的值,如果值不存在则返回 nil 。

4.3 合并两个字典

  • merge(_:uniquingKeysWith:)

4.4 fifirstIndex

  • 虽然字典是无序的,但是每个kv对在扩容之前的位置是稳定的。如果你需要保持顺序的kv对 可以使用 KeyValuePairs。
相关推荐
嗯嗯=5 小时前
STM32单片机学习篇9
stm32·单片机·学习
墨瑾轩6 小时前
C# PictureBox:5个技巧,从“普通控件“到“图像大师“的蜕变!
开发语言·c#·swift
ooo-p6 小时前
FPGA学习篇——Verilog学习之“呼吸灯”
学习·fpga开发
求真求知的糖葫芦6 小时前
微波工程4.2节阻抗与导纳矩阵学习(自用)
笔记·学习·线性代数·矩阵·射频工程
炽烈小老头7 小时前
【 每天学习一点算法 2026/01/26】缺失数字
学习·算法
子夜江寒8 小时前
OpenCV 学习:图像拼接与答题卡识别的实现
python·opencv·学习·计算机视觉
wdfk_prog8 小时前
[Linux]学习笔记系列 -- [drivers][base]platform
linux·笔记·学习
W_a_i_T10 小时前
【Coding日记】菜鸟编程C语言100例——第一题
c语言·学习·编程思维·菜鸟编程
朔北之忘 Clancy10 小时前
2025 年 12 月青少年软编等考 C 语言二级真题解析
c语言·开发语言·c++·学习·算法·青少年编程·题解
●VON11 小时前
Flutter for OpenHarmony:基于可选描述字段与上下文感知渲染的 TodoList 任务详情子系统实现
学习·flutter·架构·交互·von