前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Swift-Dictionary

Swift-Dictionary

作者头像
全栈程序员站长
发布2022-07-12 15:09:27
2530
发布2022-07-12 15:09:27
举报

大家好,又见面了,我是全栈君,祝每个程序员都可以多学几门语言。

1、字典写法

Dictionary<KeyType,ValueType>,KeyType是你想要储存的键,ValueType是你想要储存的值。

唯一的限制就是KeyType必须是可哈希的,就是提供一个形式让它们自身是独立识别的

Swift的全部基础类型都能够

2、创建字典

代码语言:javascript
复制
var airport :Dictionary<String, String> = ["TYO": "Tokyo", "DUB": “Dublin"] 
代码语言:javascript
复制
var namesOfIntegers = Dictionary<Int, String>()
代码语言:javascript
复制
namesOfIntegers[16] = "sixteen"

3、字典元素个数

代码语言:javascript
复制
airports.count

4、字典加入�一个元素

代码语言:javascript
复制
airports["LHR"] = "London"

5、使用下标语法去改变一个特定键所关联的值。

代码语言:javascript
复制
airports["LHR"] = "London Heathrow"
代码语言:javascript
复制
updateValue(forKey:) 方法返回一个和字典的值同样类型的可选值. 
比如,假设字典的值的类型时String,则会返回String? 或者叫“可选String“,这个可选值包括一个假设值发生更新的旧值和假设值不存在的nil值。        
if let oldValue = airports.updateValue("Dublin International", forKey: "DUB") {
println("The old value for DUB was \(oldValue).")
}

6、获取key所相应的值

代码语言:javascript
复制
let airportName = airports["DUB"]

使用下标语法把他的值分配为nil,来移除这个键值对。

7、移除key相应的值

代码语言:javascript
复制
airports["APL"] = "Apple International"
// "Apple International" 不是 APL的真实机场,所以删除它
airports["APL"] = nil
代码语言:javascript
复制
从一个字典中移除一个键值对能够使用removeValueForKey方法,这种方法假设存在键所相应的值,则移除一个键值对,并返回被移除的值,否则返回nil。
let removedValue = airports.removeValueForKey("DUB")

8、用for in遍历字典

代码语言:javascript
复制
for (airportCode, airportName) in airports {
println("\(airportCode): \(airportName)")
}

读取字典的keys属性或者values属性来遍历这个字典的键或值的集合。

代码语言:javascript
复制
for airportCode in airports.keys {
println("Airport code: \(airportCode)")
}
// Airport code: TYO
// Airport code: LHR
for airportName in airports.values {
println("Airport name: \(airportName)")
}

使用keys或者values属性来初始化一个数组

代码语言:javascript
复制
let airportCodes = Array(airports.keys)
let airportNames = Array(airports.values)

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/118905.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年11月,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档