知识卡片

三种集合类型的选择依据

专业/工作 · 629

内容

Array、Set、Dictionary 虽然都是容纳一组同类型数据的容器,但底层组织方式不同,决定了各自 适用场景:Array 用递增整数下标关联元素,保留插入顺序,代价是查找某个值是否存在需要遍历; Set 放弃顺序、禁止重复,换来判重和集合运算(交集/并集/补集)的语义直接可用;Dictionary 用 任意类型的键做索引,比 Array 更灵活但同样不保证顺序。发散:这本质是”要不要顺序”与”要不要 按值快速判重/检索”两个正交问题的组合——只关心一批数据本身、不在意顺序也不允许重复时选 Set,需要按位置访问或保留插入顺序时选 Array,需要按业务含义的键去关联数据时选 Dictionary。

参考来源

《Swift 4从零到精通iOS开发》第3章《字符、字符串与集合类型》