2014年6月19日木曜日

配列について

 配列の特徴を適当に列挙しておく。

・配列のインデックス(番号)はゼロから始まる。ゼロオリジンと言うらしい。0 1 2 3…。

・インデックスにはマイナスにより最後の値から指定できる。最後の値のインデックスは-1。
irb(main):012:0> a = [3, 5, 7, 11]
=> [3, 5, 7, 11]
irb(main):013:0> a[0]
=> 3
irb(main):014:0> a[3]
=> 11
irb(main):015:0> a[-1]
=> 11
irb(main):016:0> a[-2]
=> 7
・その他のメソッドでの配列指定や論理式。
irb(main):017:0> a.first
=> 3
irb(main):018:0> a.second
=> 5
irb(main):019:0> a.last
=> 11
irb(main):020:0> a.last == a[-1]
=> true
・値の追加。異なる値の型も共存できる。push
irb(main):022:0> a.push(4)
=> [3, 5, 7, 11, 4]
irb(main):023:0> a << 6
=> [3, 5, 7, 11, 4, 6]
irb(main):024:0> a << "unko" << "anko"
=> [3, 5, 7, 11, 4, 6, "unko", "anko"]
・連結と分割。join split
irb(main):029:0> a.join
=> "3571146unkoanko"
irb(main):030:0> a.join(',')
=> "3,5,7,11,4,6,unko,anko"
irb(main):031:0> "unko anko punk".split
=> ["unko", "anko", "punk"]
irb(main):032:0> "unkoxankoxpunk".split('x')
=> ["unko", "anko", "punk"]
・範囲。
irb(main):037:0> a = (0..9).to_a
=> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
irb(main):041:0> a[0..a.length-2]
=> ["unko", "anko", "pink"]
irb(main):042:0> a[1..-1]
=> ["anko", "pink", "monk"]
irb(main):044:0> a = ('a'..'f').to_a
=> ["a", "b", "c", "d", "e", "f"]
・文字列に変換。
irb(main):039:0> a = %w[unko anko pink monk]
=> ["unko", "anko", "pink", "monk"]
irb(main):040:0> a[2..3]
=> ["pink", "monk"]

0 件のコメント:

コメントを投稿