繁体   English   中英

Swift 3:从返回nil访问嵌套字典吗?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM