我刚接触Swift编程。我正在开发一个应用程序,我有一个对象数组,我需要将它保存到一个字典,意味着字典'对象数组'应该是我的价值和ID'应该是我的钥匙。
这里有2个元素包含在我的数组中,如何使用任何唯一的密钥从Dictionary保存和检索。请建议我。谢谢!
答案 0 :(得分:0)
你可以通过
来完成var myDict = Dictionary<String, Any>()
myDict = ["myKey": myArrayObjectName as! VideoRangeInfo]
现在您可以使用下面的字典的“myKey”来访问您的数组,
print("My array = \(myDict["myKey"] as! VideoRangeInfo)")
更新:我认为您的数组是客观的c NSMutableArray
而不是快速Array
所以
var myDic = NSMutableDictionary()
myDic.setObject(myArrayObjectName, forKey: "myKey")
并且
print("My array = \(myDic.object(forKey: "MyKey") as! VideoRangeInfo)")
答案 1 :(得分:0)
一个简单的方法是:
struct VideoRangeInfo {
var name: String
}
var arrayVideoRange = [
VideoRangeInfo(name: "Name1"),
VideoRangeInfo(name: "Name2"),
VideoRangeInfo(name: "Name3")
]
var dictionary = [String: VideoRangeInfo]()
for obj in arrayVideoRange {
dictionary.updateValue(obj, forKey: obj.name)
}
print(dictionary["Name1"]!)
print(dictionary["Name2"]!)
print(dictionary["Name3"]!)
答案 2 :(得分:0)
保存 var dictionary = Int:String
dictionary.updateValue(value: self.arrangeVideoInfo[0]!, forKey: 1)
dictionary.updateValue(value: self.arrangeVideoInfo[0]!, forKey: 2)
获得
let value1 = dictionary[1] as! VideoRangeInfo
let value2 = dictionary[2] as! VideoRangeInfo