当前位置: 首页 > news >正文

iOS开发 Swift 速记2:三种集合类型 Array Set Dictionary

初级代码游戏的专栏介绍与文章目录-CSDN博客

我的github:codetoys,所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。

这些代码大部分以Linux为目标但部分代码是纯C++的,可以在任何平台上使用。

源码指引:github源码指引_初级代码游戏的博客-CSDN博客

C#是我多年以来的业余爱好,新搞的东西能用C#的就用C#了。


        Array 数组,可重复

        Set 不可重复,无序

        Dictionary 不可重复,键值对,无序

        Set和Dictionary估计是使用Hash实现的。

目录

一、Array

二、Set

三、Dictionary


一、Array


    构造 [类型或初值] Array<类型>(初值)
    + 数组可以直接相加
    count
    isEmpty
    [2...5] 区间
    first last 注意是?
    append insert remove removeFirst removeLast removeSubrange replaceSubrange removeAll
    contains 是否包含某个元素
    indices 返回Range,下标范围[startIndex,endIndex)
    min max 不需要预先排序
    sorted 排序,返回排序结果,不改变自身顺序

二、Set

    无序集合 可以用数组构造
    可按下标操作 startIndex index() 只能向后移动
    count
    isEmpty
    contains
    min max
    insert remove removeFirst removeAll
    intersection(b) 交集 共同部分
    symmetricDifference(b) 交集的补集 并集去掉共同部分
    union(b) 并集
    subtracting(b) 补集 去掉b也有的部分
    == 全相同
    isSubset 子集
    isSuperset 超集
    isStrictSubset isStrictSuperset 真子集 真超集
    sorted 排序,返回值是数组,不改变自身

三、Dictionary

    声明 var dict:[type1:type2] var dict:Dictionary<type1,type2>
    初始化 =[ : , :]
    [] = 插入或更新
    updateValue() 不存在返回nil
    removeValue
    removeAll
    sorted 排序,返回值是数组,不改变自身


(这里是文档结束)
 

http://www.dtcms.com/a/291137.html

相关文章:

  • 关于 Python 的踩坑记录
  • 《使用Qt Quick从零构建AI螺丝瑕疵检测系统》——0. 博客系列大纲
  • 多片RFSoC同步,64T 64R
  • (Python模块)Python 的进阶工具:sys模块、os模块 与 logging 模块
  • 通过TPLink路由器进行用户行为审计实战
  • tcpdump 命令解析(随手记)
  • Vue过度与动画效果
  • 【Linux】重生之从零开始学习运维之Mysql安装
  • GNU Radio多类信号多种参数数据集生成技巧
  • 【Spring AI】Advisors API—顾问(即拦截器)
  • 信号量demo
  • 【华为机试】503. 下一个更大元素 II
  • 【华为机试】85. 最大矩形
  • Excel函数 —— UNIQUE 去重提取唯一值
  • 智能码表新革命:VTX316-TTS语音芯片如何重塑骑行体验
  • 【补充】Linux内核链表机制
  • C语言自定义类型:联合体和枚举
  • CS231n-2017 Lecture4神经网络笔记
  • 【爬虫】05 - 爬虫攻防
  • 车载软件架构 --- 软件开发面临的问题
  • 神经网络——归一化层
  • 从 C# 到 Python:项目实战第五天的飞跃
  • Ubuntu 22 集群部署 Apache Doris 3.0.3 笔记
  • 音视频重回顾及nat内网穿透相关再整理笔记
  • Ubuntu 22.04 安装 Docker (安装包形式)
  • ESP32-S3 小电视学习笔记1:分光棱镜、QMI8658六轴惯导计、1.3英寸LCD屏
  • 4.Java创建对象有几种方式?
  • Spring Cloud——Spring Cloud LoadBalancer
  • 7月21日总结
  • C/C++---emplace和emplace_back