SwiftのArrayとDictionaryをざっくり理解した。ざっくりな!

ちょっと前にわからなかったこととして、こんなものを残してた。

NSArrayとは??SwiftのArrayとの違いは??

まずはざっくり理解でいこう。

ちなみに、こんなことが書いてあるページもあったので、厳密には全く一緒!!ってわけではなさそうな気もする。

SwiftObjective-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っそう。

qiita.com


公式のドキュメントのCollection Typesを見ると、SwiftのCollection関連が理解できそう。Setもあるのか。

developer.apple.com


Objective-Cとの互換性で気をつけないといけないことはありそうだけど、以下のQiitaみたいに簡単に変換できる場合もあるっぽい。

qiita.com

まとめ

JavaみたいにCollectionが豊富なのかなーと思ったけど、そうでもない感じ??

そもそも言語仕様が違うから、Collectionを豊富にする必要性もないのかな??ポインタとか根本的な言語の作りに依存する話ではあるしね。

適当なこと言ってますけど・・・。