チェリー本 4章 その1
配列
配列や繰り返し処理を理解する。
配列は改行して値を代入することができる。
この式は数値1,2,3を変数aに代入するコード
a = [ 1, 2, 3, ] p a => [1, 2, 3]
最後の要素が,ついても文法上エラーにはならない。
配列の中に配列も可能
a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] p a[1][0] #4を呼び出せる。
要素の追加と削除
追加
配列には添字を添えて新しい値を代入することができる。
a = [10, 20, 30, 40] p a => [10, 20, 30, 40] #一番最初の10を11に書き換え a[0] = 11 p a => [11, 20, 30, 40] #今現在配列の要素にある添字は0~3までしか存在しない。 #存在しない値を取り出すとnilになる。 #添字にa[6] = 60とするとどうなる?? [11, 20, 30, 40, nil, nil, 60] 添字は4~5はnilで埋められる。
削除
配列の中の要素を削除したい時
a = [10, 20, 30, 40] #配列の中の何を消したかわかる p a.delete_at(1) => 20 #今現在の配列の中がわかる。 p a => [10, 30, 40] 消したい添字番号が存在しないとnilを返す。
配列を使った二重代入
2章で出てきた多重代入
ここではどんな時使えるか書いていく。
a, b = [1, 2] p a, b
今回記載するのは...
rubyで割り算の商と余りを配列にして返してくれる。
メソッドdivmodが存在する。
#変数quo_remにdivmodメソッドの戻り値を代入 quo_rem = 14.divmod(4) #戻り値そのまま受け取る p "商 = #{quo_rem[0]}, 余り = #{quo_rem[1]}" 変数を別々に受け取ることができる。 quotient, remainder = 14.divmod(4) p "商 = #{quotient} 余り = #{remainder}"