[英]Swift 3: Accessing nested dictionary from returns nil?
我在尝试访问嵌套的Dictionary
遇到问题,该Dictionary
似乎返回nil
。
这是我的info
输出的类型Dictionary<String, Any>
:
info = ["list_order": 1, "name": Some Text, "id": 1, "menu_items": {
1 = {
"food_name" = "String";
"food_picture" = "link";
"food_price" = "2.00";
};
2 = {
"food_name" = "String";
"food_picture" = "link";
"food_price" = "5.00";
id = 2;
};
}]
info["menu_items"]
的输出:
info["menu_items"] = {
1 = {
"food_name" = "String";
"food_picture" = "link";
"food_price" = "2.00";
id = 1;
};
2 = {
"food_name" = "String";
"food_picture" = "link";
"food_price" = "5.00";
id = 2;
};
}
但是,以下分配在test
产生nil
:
let test = info["menu_items"] as? Dictionary<Int, Any>
有什么不明显的东西还是我不了解基本原理?
如果您的键不是Int
类型,则很可能是String
类型,请使用[String: Any]
尝试一次。
if let menuItems = info["menu_items"] as? [String: Any] {
print(menuItems)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.