मैं स्विफ्ट में खाली सरणियों को इनिशियलाइज़ करने के लिए अपना सिर लपेटने की कोशिश कर रहा हूँ।
तार की एक सरणी के लिए यह बहुत सीधे आगे है:
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[] = []
काम क्यों नहीं करती है?