加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

3.9 Swift字典的基本概念

发布时间:2020-12-14 06:33:50 所属栏目:百科 来源:网络整理
导读:/** 字典的基本概念 字典也是一种集合数据类型 和数组不太一样,哪点不太一样呢 数组中的元素是连续存储的 字典里面的元素是没有顺序的 字典如何检索呢,字典存储键值对 里面的每一个 key 唯一的, 值可以有相同的 哈希函数 address = hash(key),value = has

/**

字典的基本概念

字典也是一种集合数据类型

和数组不太一样,哪点不太一样呢

数组中的元素是连续存储的

字典里面的元素是没有顺序的

字典如何检索呢,字典存储键值对

里面的每一个 key 唯一的, 值可以有相同的

哈希函数

address = hash(key),value = hashTable[address]

通过哈希函数计算出地址来定位 value

为什么通过哈希函数来做呢,查找效率高啊

所以字典的背后机制呢,是基于哈希的

*/

// var dic = [key1:value1,key2:value2,key3:value3,...]

// 空数组 swift3.0 中不可以再这样子直接 赋空

// let arr = []


let arr = NSArray()

print(arr)

print("-------------->")


// 空字典 swift3.0 中不可以再这样子直接 赋空

// let dic = [:]

let dic = NSDictionary()

print(dic)

print("-------------->")


/**

key 关键字一定是可hash

String/Int/Float/Bool 等都可以

*/

let dic1 = [1 : "1",2 : "2"]


print(dic1)

print("-------------->")

let dic2 = ["1":1,"2":"2",3:"3"] as [AnyHashable : Any]

print("-------------->")

print(dic2)


// 定义了特定类型的键值对

let dic3: Dictionary<String,Int> = ["3" : 4]

print("-------------->")

print(dic3)


// 也可以这样子定义啊

let dic4: [String : Int] = ["3" : 4]

print("-------------->")

print(dic4)


print("-------------->")

print(dic4.count)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读