Swift 3.0 字典

字典

swift 字典不僅可以存儲對象類型的值,還可以存儲基本數(shù)據(jù)類型的值,結構體,枚舉值。字典本質(zhì)上也是結構體。

  • 字典聲明
    let dic1 = ["key1":1, "key2":2, "key3":3, "key4":4]
    let dic2 = String:Int
    let dic3:[String:Int] = ["key1":1, "key2":2, "key3":3, "key4":4]
    let dic4:Dictionary = ["key1":1,"key2":2];
    // 字典范性定義的方式
    let dic5:Dictionary<String, Int> = ["key1":1, "key2":2, "key3":3]
    let dic6:[String:AnyObject] = ["key1":1 as AnyObject, "key2":2 as AnyObject, "key3":"value3" as AnyObject, "key4":4 as AnyObject]
    let dic7:NSDictionary = NSDictionary(dictionary: ["key1":1, "key2":2, "key3":3, "key4":4])
    //使用init()構造器
    let dic8:[String:String] = Dictionary<String,String>()
    //使用init(minimumCapacity:Int) 并且指定了字典的最小容量
    let dic9:[String: Int] = Dictionary<String, Int>(minimumCapacity: 5)
  • 字典中元素的個數(shù)
    print(dic3.count)
    print(dic2.count)
  • 字典是否為空
    print(dic1.isEmpty)
  • 獲取字典中的key/value
    print(dic7.allKeys)
    print(dic7.allValues)
    print(dic4["key1"]!)
    print(dic5["key2"]!)
  • 修改字典
    var dic10:Dictionary<String,String>
    dic10 = ["key1":"value1","key2":"value2"]
    dic10["key1"] = "changeString"
    print(dic10)
  • 添加字典
    var dic10:Dictionary<String,String>
    dic10 = ["key1":"value1","key2":"value2"]
    dic10["key3"] = "value3"
    dic10.updateValue("value", forKey: "key4")
  • 刪除
    var dic10:Dictionary<String,String>
    dic10 = ["key1":"value1","key2":"value2"]
    // 刪除指定key
    dic10["key1"] = nil
    dic10.removeValue(forKey: "key2")
    // 刪除全部
    dic10 = [:]
    dic10.removeAll()
    // 對于 keepCapacity :false /true ,根據(jù)需求選擇 即可;區(qū)別是true的話,會保持數(shù)據(jù)容量,占據(jù)空間?
    dic10.removeAll(keepingCapacity: true)

遍歷字典

   for (key, value) in dic3 {
      print(key,value)
  }
  for key in dic3.keys {
      print(key)
  }
  for value in dic3.values {
      print(value)
  }
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內(nèi)容