SwiftのArrayとDictionaryをざっくり理解した。ざっくりな!
ちょっと前にわからなかったこととして、こんなものを残してた。
NSArrayとは??SwiftのArrayとの違いは??
まずはざっくり理解でいこう。
- NSArray = Objective-Cの配列
- Array = Swiftの配列
ちなみに、こんなことが書いてあるページもあったので、厳密には全く一緒!!ってわけではなさそうな気もする。
SwiftとObjective-Cで配列をやりとりする場合は、Array<AnyObject
>を使用
細かいことはおいおい覚えていこう。
似たようなものでNSDictionaryとDictionaryがある。これもざっくり理解でいこう。
- NSDictionary = Objective-Cのkey-valueな配列(Map)
- Dictionary = Swiftのkey-valueな配列(Map)
ざっくりこんな感じのもの。
// Dictionary var dictionary = ["key": "test", "key2": 1] dictionary["key3"] = "test3" dictionary["name"] = "ore" if let name = dictionary["name"] { print("\(name)") } else { print("no name") } dictionary.updateValue("Update!!!!!", forKey: "key") dictionary.removeValueForKey("name")
ArrayとDictionaryの使い方は、前にも貼ったけど以下のQiitaで基本的なことは
OKっそう。
公式のドキュメントのCollection Typesを見ると、SwiftのCollection関連が理解できそう。Setもあるのか。
Objective-Cとの互換性で気をつけないといけないことはありそうだけど、以下のQiitaみたいに簡単に変換できる場合もあるっぽい。
まとめ
JavaみたいにCollectionが豊富なのかなーと思ったけど、そうでもない感じ??
そもそも言語仕様が違うから、Collectionを豊富にする必要性もないのかな??ポインタとか根本的な言語の作りに依存する話ではあるしね。
適当なこと言ってますけど・・・。