簡體   English   中英

Swift:我如何創建一個字典數組,其中每個字典都包含一個數組?

[英]Swift : How do i create an array of dictionaries, where each dictionary contains an array inside them?

我試圖將我的plist中的一些數據加載到數組中。 在聲明一個數組時,我做了類似的事情

var natureList : [Dictionary] = [] as! [Dictionary]

我收到了這個錯誤 在此輸入圖像描述

這是我的plist文件 在此輸入圖像描述

那么我如何聲明一個數組來從我的plist加載這些數據。 我知道它很簡單,但這個小東西正在吃我的腦袋。 任何幫助贊賞。

它應聲明如下:

var natureList = [[String: Any]]()

或者@ LeoDabus建議(感謝他):

var natureList: [[String: Any]] = []

表示natureList是字符串字典數組作為鍵,任意作為值。

如果你的目標是使用Dictionary -which uanessacry-來聲明它,你也可以這樣做:

var natureList = [Dictionary<String, Any>]()

艾哈邁德F有正確的答案,但萬一你或(或未來的讀者)需要在某些方面更具體,這里是如何將其分解為一個超級特定類型...

plist中最內層的項目(摘要:第一朵花等)都是[String: String]因為鍵是一個字符串,因此是相關的值。

所有這些最內部的詞典都保存在數組中,因此我們在前一個類型周圍添加了一組額外的括號: [[String : String]]

向上移動所有這些數組都在字典中,這意味着我們添加了鍵類型,冒號和括號: [String: [[String : String]]]

上一步中的字典都保存在一個數組中,這意味着我們向外部添加了另一組括號,留下了: [[String: [[String : String]]]]

同樣,這種詳細程度可能有點過分,但它有助於演示一種通過從最內層開始並逐步解決復雜數據結構的方法。 還有其他方法可以打破這樣的結構,但這個方法非常有效。

暫無
暫無

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

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