Swift中如何为键为Int、值为String数组的字典赋值?
实现方法
你可以直接通过键下标赋值的方式完成数组存入字典的操作,语法如下:
dictionary[userId] = tempArray
如果是在循环中自增userId批量存储的场景,可以参考以下示例代码:
var dictionary = [Int:[String]]() // 基础模板数组 let templateArray = ["calls","messages","alerts","notifications"] // 示例:给ID为1到20的用户批量存储对应数组 for userId in 1...20 { // 若不同用户的数组需要自定义内容,可在此处修改生成对应tempArray let tempArray = templateArray dictionary[userId] = tempArray }
取值验证
当你需要读取指定用户ID对应的数组时,直接通过下标取值即可:
// 读取ID为5的用户对应的数组 if let userArray = dictionary[5] { // 拿到数组后可做后续业务处理 print(userArray) }
可选扩展
如果你需要给已存在的用户ID对应的数组追加内容,而非覆盖原有值,可以使用默认值写法避免空值崩溃:
// 给userId对应的数组追加新元素,userId不存在时会自动初始化空数组再追加 dictionary[userId, default: []].append(contentsOf: tempArray)
内容的提问来源于stack exchange,提问作者Muhammad Bilal
相关产品推荐
相关产品推荐

