簡體   English   中英

字典數組的迭代數組

[英]Iterating Array of Arrays of Dictionaries

所以我有一個充滿字典數組的數組

例如:

var array1 = ["key1":"value1","key2":"value2"]
var array2 = ["key1":"value1","key2":"value2"]
var array3 = ["key1":"value1","key2":"value2"]

**鍵和值在整個數組中保持一致

然后我有一個包含這些數組的大數組

例如:

var bigArray = [array1,array2,array3]

如何使用for in循環遍歷所有內容,以便可以讀取每個數組中每個字典中的每個鍵/值。

Objective-c我可以輕松地做到這一點,但是我只是從快速開始,但是我遇到了錯誤(由於轉換,我很確定)

現在我有這樣的事情

for arr in bigArray as NSArray {
     for dict in arr as NSDictionary {
         var coordinates : NSString = dict["coordinate"] as NSString
     }
}

不幸的是,這給了我錯誤。

問題是您的3個“數組”實際上是字典。 您將它們聲明為鍵值對列表。 這意味着您的循環看起來像這樣:

var array1 = ["key1":"value1","key2":"value2"]
var array2 = ["key1":"value1","key2":"value2"]
var array3 = ["key1":"value1","key2":"value2"]

var bigArray = [array1,array2,array3]

for dict in bigArray {
    var coordinates = dict["coordinate"]
}

另外,您會注意到我沒有對NSArray或NSDictionary類型進行任何強制轉換。 最好堅持使用Swift本機容器,這樣就不必不斷將類型轉換為其他類型。

如果您實際上有一個大數組的字典數組,它將看起來像這樣:

var array1 = [["key1":"value1"],["key2":"value2"]]
var array2 = [["key1":"value1"],["key2":"value2"]]
var array3 = [["key1":"value1"],["key2":"value2"]]

var bigArray = [array1,array2,array3]

for arr in bigArray {
    for dict in arr {
        var coordinates = dict["coordinate"]
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM