Rubyの配列を学ぶ
Array
#ゼロからわかる_Ruby_超入門
概要
任意の Ruby オブジェクトを要素として持つことができる。
配列を代入する変数の名前は、複数形の単語とするとわかりやすい (booksなど)
配列の数え方
配列は後ろから数えることもできる。例)foo[-1]
array[nth]のように書いた時、nth 番目の要素が存在しない場合、返り値はnilになる。
配列のメソッドたち
配列の先頭の要素を取得するにはfirstメソッド、末尾ならlastメソッド
配列の末尾へ追加するにはpushメソッド (または<<メソッド)、先頭へ追加するにはunshiftメソッド
配列の末尾から要素を1つ削除するにはpopメソッド、先頭からならshiftメソッド。
配列の足し算、引き算ができる。
code:calc_array.rb
p 1, 2 + 3, 4 # => 1, 2, 3, 4
p 1, 2, 3, 4 - 3, 2 # => 1, 4
配列の全要素の繰り返し処理をするにはeachメソッド
Rubyの繰り返し処理を学ぶ
配列の要素数を取得するにはsizeメソッド
配列の全要素の合計を取得するにはsumメソッド
配列から重複した要素を取り除いた配列を取得するにはuniqメソッド
配列からランダムに要素を取得するには sampl メソッド
配列をランダムに並び換えた配列を取得するにはshuffleメソッド
配列の要素を順に並び替えた配列を取得するにはsortメソッド
逆順にしたい場合は、reverseをメソッドをつなげる。
reverseメソッドは文字列クラスにもある。例)p "foobar".reverse # => "raboof"
配列の全要素をつなげた文字列を取得するにはjoinメソッド
文字列をスペースで区切って要素とした配列を取得するにはsplitメソッド
配列の全要素にブロック中の処理で変換を行った後の配列を取得するには mapメソッド
code:map.rb
# do end を使う
"abc", "123".map do |text|
text.reverse
end
# { } を使って一行にする
"abc", "123".map{ |text| text.reverse }
# &: を使ってさらにスッキリ
"abc", "123".map(&:reverse) #メソッドに引数を渡す場合は使えない
#Rubyのオブジェクト、インスタンス、クラスについて学ぶ