swift字典
- 创建字典
//关键字 字典名 键类型 值类型
var somedict = [keytype: valuetype]()//括号里没有值的话,就是一个空字典
- 访问字典
//通过字典的索引值获取字典中的值
var somevar = somedict[index]
- 代码实现
import UIkit
//创建一个字典
var somedict :
[Int:String](1:"hanxuzu", 2:"libo", 3:"lijiaxin")
//修改字典 1-使用updatedValue(forkey:),方法返回optional值
var oldvar = somedict.updatedValue("hanxuzu的新值",forkey:1)
//修改字典 2 通过 key来修改,方法返回optional值
/*var oldvar = somedict[1]
somedict[1] = "新值"
var somevar = somedict[1]
*/
//访问字典
var somevar = somedict[1]
print("key = 1 旧的值是 \(oldvar)")
print("key = 1 的值是 \(somevar)")
print("key = 2 的值是 \(somedict[2])")
print("key = 3 的值是 \(somedict[3])")
4.移除 key-value对——使用 removeValueForkey()方法
var removedValue = somedict.removeValue(forkey:2)
print("key = 1 的值是 \(somevar)")
print("key = 2 的值是 \(somedict[2])")
print("key = 3 的值是 \(somedict[3])")
运行结果:key = 1 的值是 optional(“hanxuzu”)
key = 2 的值是 nil
key = 3 的值是 optional(“lijiaxin”)
——使用nill移除key-value对
import UIkit
var someditc:[Int: String](1:"one", 2:"two")
somedict[2] = nil
var somevar = somedict[1]
print("key = 1 的值是 \(somevar)")
print("key = 2 的值是 \(somedict[2])")
运行结果:key = 1 的值是 optional(“one”)
key = 2 的值是 nil
5.遍历字典
import UIkit
var somedict:[Int: String](1:"one", 2:"two")
var somevar = somedict[1]
//通过for- in 来遍历某个字典中的值键对
for (key, value) in somedict{
print("字典 key\(key) - 字典value\(value)")
}
//通过enumerate()方法遍历
for (key, value) in somedict.enumerated{
print("字典 key\(key) - 字典value\(value)")
}
运行结果:
字典 key 1 - 字典 value One
字典 key 2 - 字典 value Two
6.字典转换为数组——成为独立的数组
import UIkit
//创建数组
var somedict:[Int:String](1:"one", 2:"two")
let dictkeys = [Int](somedict.keys)
let dicctvalues = [String](somedict.values)
print("输出字典的键(key)")
for (key)in dictkeys{
print("\(key)")
}
print("输出字典的值(value)")
for (value) in dictvalues{
print("\(value)")
}
7.count 属性,计算字典中有多少个键值对
import UIkit
var somedict:[Int:String](1:"one", 2:"two")
print("somedict 中有 \(somedict.count) 个键值对" )
8.isEmpty属性——判断字典是否为空,返回值 布尔型
import UIkit
var somedict1:[Int:String](1:"haha", 2:"xixi")
var somedict2:[Int:String](4:"wawa", 5:"hehe")
var somedict3:[Int:String]()
print("somedict1 = \(somedict1.isEmpty)")
print("somedict2 = \(somedict2.isEmpty)")
print("somedict3 = \(somedict3.isEmpty)")
运行结果:someDict1 = false
someDict2 = false
someDict3 = true