在Swift中初始化空数组的字典
发布时间:2020-12-14 06:09:33 所属栏目:百科 来源:网络整理
导读:我试图把我的头围绕在初始化空数组在Swift。 对于字符串数组,它非常直接: var myStringArray: String[] = []myStringArray += "a"myStringArray += "b"- ["a","b"] 和整数 var myIntArray: Int[] = []myIntArray += 1myIntArray += 2- [1,2] 它也适用于其
我试图把我的头围绕在初始化空数组在Swift。
对于字符串数组,它非常直接: var myStringArray: String[] = [] myStringArray += "a" myStringArray += "b" -> ["a","b"] 和整数 var myIntArray: Int[] = [] myIntArray += 1 myIntArray += 2 -> [1,2] 它也适用于其他类型的对象,如NSImage对象: let path = "/Library/Application Support/Apple/iChat Icons/Flags/" let image1 = NSImage(byReferencingFile: path + "Brazil.png") let image2 = NSImage(byReferencingFile: path + "Chile.png") var myImageArray: NSImage[] = [] myImageArray += image1 myImageArray += image2 -> [<NSImage 0x7fe371c199f0 ...>,<NSImage 0x7fe371f39ea0 ...>] 然而,我不能找出语法来初始化空数组的字典。 我知道你可以有一个数组的字典,因为初始化与初始值工程: let myDict1 = ["someKey":"someValue"] let myDict2 = ["anotherKey":"anotherValue"] var myDictArray = [myDict1] myDictArray += myDict2 -> [["someKey": "someValue"],["anotherKey": "anotherValue"]] 编辑:在下面的代码中有一个错误(混合myNewDictArray和myDictArray),当纠正它不工作,我说它做了。 如下: let myDict1 = ["someKey":"someValue"] let myDict2 = ["anotherKey":"anotherValue"] var myNewDictArray: AnyObject = [] myDictArray += myDict1 myDictArray += myDict2 -> [["someKey": "someValue"],["anotherKey": "anotherValue"]] 然而(你会希望语法是)失败: var myNewDictArray: Dictionary[] = [] 与错误无法转换表达式的类型“字典[]’类型’Hashable’ 所以问题是什么是初始化一个空数组的字典项目的正确方法,为什么不这个语法var myNewDictArray:Dictionary [] = []工作?
你需要给字典的类型:
var myNewDictArray: [Dictionary<String,Int>] = [] 要么 var myNewDictArray = [Dictionary<String,Int>]() 编辑:您也可以使用较短的语法: var myNewDictArray: [[String:Int]] = [] 要么 var myNewDictArray = [[String:Int]]() (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |