*

Swiftの基本を理解する。配列 Array と辞書 Dictionary。

   

PAK85_hanbirakinorokka-500
配列Arrayと辞書Dictionaryはプログラムでよく利用するものの一つだと思います。

1列に並んだロッカー。ロッカーには0番から1.2.3と順に番号が振ってあります。
これが配列と言ってもいいでしょう。
(0番から始まる点に注意しましょう。)


//配列
var array1 = [100,200,300,400,500,600]

なお、ロッカーには物(値)が一つだけ入れられます。

今度は、そのロッカーに山田、佐藤と名札をつけます。
これが辞書と言えるでしょう。


//ディクショナリ
var dict = [
    "age":30,
    "height":171,
    "weight":69
        ]

配列から値を取り出す時は番号を指定します。

例えば、友人に先ほどのロッカーから物を出して欲しいとき、何と言うでしょうか。
「2番のロッカーの中身を持ってきて。」と言うと思います。

それと同じですね。

この番号を要素、index(インデックス)と言います。

配列の値は[]の中に要素を指定して取り出します。

//配列
var array1 = [100,200,300,400,500,600]
        
println(array1[0]) //100
println(array1[4]) //500
println(array1[5]) //600

では辞書の場合はどうでしょうか?

名札がついてあるロッカーであれば、「山田のロッカーの中身をもってきて」と言うでしょう。

辞書は要素が番号ではなく名前になります。
尚、この名前は自由に決めることができます。

//ディクショナリ
var dict = [
    "age":30,
    "height":171,
    "weight":69
        ]
println(dict["age"]) //30
println(dict["height"]) //171

配列、辞書への値の追加・削除

最初に設定した配列や辞書に値を追加したい事もよくあります。

値の追加は以下のように行います。

・配列の場合

//配列
var array1 = [100,200,300,400,500,600]

//配列の最後に10を追加する。
array1.append(10)

//+=で追加も可能
array1 += [111]

//複数の値の追加も可能
array1 += [222,333]

println(array1[6]) //10

・辞書の場合

//ディクショナリ
var dict = [
    "age":30,
    "height":171,
    "weight":69
        ]

//要素"number"を追加する。
dict["number"] = 1234

println(dict["test"]) //1234

削除は次の通り。

・配列

//配列
var array1 = [100,200,300,400,500,600]

let removeItem = array1.removeAtIndex(3)
//要素3の400が削除される。削除した要素の値が戻り値
println(removeItem)//400

//400が削除されたので、要素が一つずつ前にずれる。
println(array1[3])//500

・辞書


//ディクショナリ
var dict = [
    "age":30,
    "height":171,
    "weight":69
        ]

//nilを設定する事で削除する。
dict["weight"] = nil

if let removedValue = dict.removeValueForKey("height") {
    println(removedValue)//171
} else {
    println("heightはありません。")
}
//removeValueForKeyを使っての削除。戻り値は削除した要素の値。
//上記の例ではif文を使って削除されたかを判断している。

他にも配列や辞書はいろいろな操作が可能ですが、それはまた今度。

最後に

配列と辞書はプログラムの基礎の中でも重要な部分です。

自分も復習しながらこの記事を書きましたが、改めて基礎の大切さを感じました。

 - Swift