Swift的字典操作

本文介绍了Swift中字典的各种操作,包括创建、访问、修改、添加数据、删除、取值、遍历以及字典的赋值和拷贝行为。通过示例代码展示了如何操作字典并理解其内存行为。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

// 字典操作
// 1 创建一个字典对象
var dicInfo:Dictionary<String,Int>= ["张飞":1,
"刘备":2]
// 2 访问数组对象
println(dicInfo["张飞"])

// 3 修改数组对象
dicInfo["张飞"] = 3
println(dicInfo)
dicInfo.updateValue(131,forKey: "张飞")
println(dicInfo)

// 4 向字典中添加数据
dicInfo["赵云"] = 32
println(dicInfo)

// 5 删除操作
dicInfo.removeValueForKey("张飞")
println(dicInfo)

// 6 取相应的值
let value = dicInfo["赵云"]
println(value)

// 7 遍历(无序的)
for(key,value) in dicInfo
{
    println("键\(key) 值\(value)")
}
for tuples in dicInfo
{
    println("键:\(tuples.0) 值\(tuples.1)")
    // 打印的是一个字典对象
    println(tuples)
}
for value in dicInfo.values
{
    println("value=\(value)")
}
// 8 构造一个字典对象
var names = Dictionary<Int,String>()

// 9 字典类型的赋值和拷贝行为

/*
注意:字典和数组的拷贝是不同的

1.无论何时将一个字典实例赋给一个常量或变量,或者传递给一个函数或方法,这个字典会即会在赋值或调用发生时被拷贝。

2.如果字典实例中所储存的键(keys)和/或值(values)是值类型(结构体或枚举),当赋值或调用发生时,它们都会被拷贝。相反,如果键(keys)和/或值(values)是引用类型,被拷贝的将会是引用,而不是被它们引用的类实例或函数
*/
var dicInfo1 = dicInfo
println(dicInfo)
println(dicInfo1)
//[刘备: 2, 赵云: 32]
//[刘备: 2, 赵云: 32]


dicInfo.updateValue(11111, forKey:"赵云")
println(dicInfo)
println(dicInfo1)
//[刘备: 2, 赵云: 11111]
//[刘备: 2, 赵云: 32]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值