日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

linq判断集合中相同元素个数_iOS开发swift语法梳理:集合Set

發布時間:2023/12/2 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linq判断集合中相同元素个数_iOS开发swift语法梳理:集合Set 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.集合的三特性

  • 確定性:給定一個集合,任意給一個元素,該元素或者屬于或者不屬于該集合,二者必居其一。
  • 互斥性:一個集合中的所有元素都是不相同的。
  • 無序性:每個元素的地位相同,元素之間是無序的。
  • 2.Set的創建

    // 初始化器創建 var letters = Set<Character>() letters.insert("c") print(letters) // 輸出 ["c"]// 數組字面量來創建set var course: Set<String> = ["Math", "English"] course.insert("History")

    3.Set的遍歷

    For-in遍歷,由于Set是無序的,如果要順序遍歷Set,需要使用sorted()方法。

    var courses: Set<String> = ["Math", "English"] for course in courses.sorted() {print(course) } // 輸出 English Math

    4.Set常用屬性和方法

    • 使用count獲得Set里元素個數
    • 使用isEmpty判斷Set是否為空
    • insert(_: )添加一個元素到Set
    • update(with:) 如果已有相等的元素,替換為新的元素,如果Set中沒有,則插入
    • filter(_:)返回一個新的Set,新Set的元素是原始Set符合條件的元素
    var personSet: Set = [Person(name: "lewis", age 30)] personSet.update(with: Person(name: "Jonathan", age: 20)) print(personSet.filter{ $0.age > 25 }) // 輸出 Person[name: "lewis", age: 30]
    • remove(_:)從Set中移除一個元素,如果元素是Set的成員就移除它,并返回移除的值,如果集合沒有這個成員就返回nil
    • removeAll()移除集合中所有元素

    5.Set的基本操作

    • intersection(_:)是求兩個集合的交集
    • union(_:)求兩個集合的并集
    • symmetricDifference(_:)就兩個集合的對稱差集
    • subtracting(_:)是求兩個集合的相對補集
    let set: Set<Character> = ["A","B","C"] let set2: Set<Character> = ["B","E","F","G"] print(set.intersection(set2)) print(set.union(set2)) print(set.symmetricDifference(set2)) print(set.subtracting(set2)) // 輸出如下 // ["B"] // ["E","F","B","G","A","C"] // ["E","F","C","A","G"] // ["A","C"]

    6.Set的判斷方法

    • isSubset(of:)判斷是否是另一個Set或者Sequence的子集
    • isSuperset(of:)判斷是否是另一個Set或者Sequence的超集
    • isStrictSubset(of:)和isStrictSuperset(of:)判斷是否是另一個Set的子集或超集,但又不等于另個一Set
    • isDisjoint(with:)判斷兩個Set是否有公共元素,如果沒有返回true,有則返回false
    let smallSet: Set = [1,2,3] let bigSet: Set = [1,2,3,4] print(smallSet.isSubset(of: bigSet)) print(bigSet.isSuperset(of: smallSet)) print(bigSet.isStrictSuperset(of: smallSet)) print(smallSet.isDisjoint(with: bigSet)) // 輸出 true true true false

    總結

    以上是生活随笔為你收集整理的linq判断集合中相同元素个数_iOS开发swift语法梳理:集合Set的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。