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"]]
그러나 이것은 (구문이 예상되는) 실패합니다.
var myNewDictArray: Dictionary[] = []
오류와 함께 Cannot convert the expression's type 'Dictionary[]' to type 'Hashable'
따라서 질문은 빈 사전 항목 배열을 초기화하는 올바른 방법은 무엇이며이 구문이 var myNewDictArray: Dictionary[] = []
작동 하지 않는 이유는 무엇입니까?