Swift 个人学习笔记 - 05: 集合类型(Array, Set, Dictionary)

前端之家收集整理的这篇文章主要介绍了Swift 个人学习笔记 - 05: 集合类型(Array, Set, Dictionary)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

文章纯粹是中文《The Swift Programming Language》的学习笔记,所以绝大部分的内容都是文中有的。本文是本人的学习笔记,不是正式系统的记录。仅供参考

以下还是有很多没看懂、不确定的地方,我会以“存疑”的注解指出。

在此感谢中文版翻译者,这极大地加快了 Swift 的学习速度。

本文地址:http://www.jb51.cc/article/p-clsgvizc-d.html


Reference:

原版:The Swift Programming Language
中文版:Swift 3 编程语言 - 集合类型

集合类型涉及三种类,分别是 Array,Set,Dictionary,分别对应 NSArray,NSSet,NSDictionary,也就是数组、集合、关联数组。

Array

创建空数组

var someInts = [Int]()
    var anEmptyArray = []
    var arrayRepeated = Arrar(Repeating: 2.5,count 3)    // 创建一个 Float 类型数组,值重复三次
    var shoppingList : [String] = ["eggs","milk"]
    var shoppingList = ["eggs","milk"]

可以用加号连接两个数组,获得一个新数组。

常用方法用法

isEmpty()
    append(_:)
    +=
    count()
    someArray[4....6]       // 取子数组
    removeLast()            // 同时会返回被删除的对象
    insert(_: at:)

for-in

这里要用到 enumated 方法

for (index,value) in anArray.enumated() {
        print ("Item \(index + 1): \(value)")
    }

Set(集合)

创建空 Set

var aSet = Set<Characters>()    // 创建 Characters 类型的 Set
    var aSet:Set = ["S","w","i","f","t"]      // 注意必须指定是 Set 类型,否则 Swift 会默认为 Array 类型

常用方法

count()
    isEmpty()
    insert(_:)
    remove(_:)
    removeAll()
    contains(_:)
    isSubset(of:)
    isSuperset(of:)
    isDisjoint(of:)      // 判断两者是否有交集

for-in

for value in aSet {
        ...
    }

集合操作

  • 取交集:a.intersects(b)

  • 取毫无相交的集:a.excludeOr(b)

  • 取并集:a.union(b)

  • 取减集:a.substract(b)

Dictionary

创建字典

var aDict = [Int : String]()
    var aDict = [:]
    var aDict = ["one": 1,"two": 2]        // 以 “key-value” 对创建 Dictionary

常用方法

count()
    isEmpty()
    updateValue(_:forKey:)        // 同时返回被替代掉的对象
    aDict["SomeKey"]

另外,赋值 nil 可以删除指定的键值对

for-in

for (theKey,theValue) in aDict {
        ...
    }

下一篇

Swift 个人学习笔记 - 06: 控制流

原文链接:https://www.f2er.com/swift/322112.html

猜你在找的Swift相关文章