如何在swift中获取数组中字典的值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在swift中获取数组中字典的值相关的知识,希望对你有一定的参考价值。

我有这样的字典

var dict : [String : Array<String>] = ["Fruits" : ["Mango", "Apple", "Banana"],"Flowers" : ["Rose", "Lotus","Jasmine"],"Vegetables" : ["Tomato", "Potato","Chilli"]]

我想为每个键获取数组中的值如何在swift中获取它?

答案

编辑:尝试这样的事情,

var dict : [String : Array<String>] = [
                                        "Fruits" : ["Mango", "Apple", "Banana"],
                                        "Flowers" : ["Rose", "Lotus","Jasmine"],
                                        "Vegetables" : ["Tomato", "Potato","Chilli"]
                                      ]


var myArray : Array<String> = []
// You can access the dictionary(dict) by the keys(Flowers, Flowers, Vegetables)
// Here I'm appending the array(myArray), by the accessed values.
myArray += dict["Fruits"]!
myArray += dict["Vegetables"]!

print("myArray (myArray)")

上面是如何在swift中获取字典的值,如果你想得到字典的所有值的连接数组(*只有值),尝试类似下面的内容。

print("values array : (dict.map{$0.value}.flatMap{$0})")

值数组:[“玫瑰”,“莲花”,“茉莉花”,“番茄”,“马铃薯”,“辣椒”,“芒果”,“苹果”,“香蕉”]

另一答案

2年半没有人提到map

好吧,抛开Dictionary有一个property values,它会做你要求的,你可以这样做:

let values = dict.map { $0.value }
另一答案

试试这个:

for (key, value) in dict {
    println("key=(key), value=(value)")
}
另一答案

尝试获取值如下面的代码

let fruits = dict["Fruits"]
let flowers = dict["Flowers"]
let vegetables = dict["Vegetables"]
另一答案

尝试:

var a:Array = dict["Fruits"]! ;

println(a[0])//mango

println(a[1])//apple
另一答案
for val in dict.values {
    print("Value -> (val)")
}

以上是关于如何在swift中获取数组中字典的值的主要内容,如果未能解决你的问题,请参考以下文章

在 Swift 中搜索字典数组的值

Swift 字典内的值访问和更改(涉及数组的字典)

如何使用 Swift 将具有两个不同键的两个值存储到数组或字典中? [关闭]

swift实现遍历嵌套字典并修改其中的值

swift实现遍历嵌套字典并修改其中的值

swift实现遍历嵌套字典并修改其中的值