今天第一次尝试在项目中加入swift语言,但是在处理数据字典的时候,发生了点小问题,获取不到字典的key值数组?甚是郁闷
结合代码来看:
首先创建了一个数据字典
// MARK: - 懒加载
lazy var titleDic:[String: AnyObject] = {
return ["First":["提现到银行卡", "我的提成", "我的积分", "我的优惠劵"],
"Second":["我的订单", "交易记录", "我的收藏夹", "地址管理"]]
}()
但是在获取所有key数组的却发生了问题:
let keys = titleDic.keys
print(keys)
打印结果发现:(麻蛋,还是个字典啊)
LazyMapCollection<Dictionary<String, AnyObject>, String>(_base: ["Second": <_TtCs21_SwiftDeferredNSArray 0x7fff396aa320>(
我的订单,
交易记录,
我的收藏夹,
地址管理
)
, "First": <_TtCs21_SwiftDeferredNSArray 0x7fff3b863fa0>(
提现到银行卡,
我的提成,
我的积分,
我的优惠劵
)
], _transform: (Function))
一直被这个问题纠结了很久,强转一下,解决问题
// 其实只要使用一点小技巧就能解决了
let keys = Array(titleDic.keys)
print(keys)
打印结果
["Second", "First"]
OK解决了
网友评论