Ruby AOJで使った文法
inject#Array
array.inject(:+) array.inject(100, :+)
配列の要素を全て足したい時に使用した。
2行目のようにすることで、初期値から配列の要素を全て足すこともできる。
join#Array
array.join array.join(" ")
配列を文字列に変換できる。AOJを練習で解いていて、半角が空いた1列で出力しろ。とかよく言われるけど、配列をputsやpすると解答が間違いになる。これを使えば、配列を全部含めて、文字列を吐き出すので配列での出力結果を1列にすることができる。
引数に"半角スペース"を置くと配列の要素の間にスペースを開けてくれる。
grep
*Enumerable モジュール
array.grep array.grep(/\AS/)
ハッシュや配列で使えるメソッドで、もともとあるarrayから引数に指定する条件を満たす配列を新たに作る。
今回使った例であればarray配列の中から頭の文字が「S」で始まる要素を集めて、新たに配列を作る。
Array.new
Array.new Array.new(10) Array.new(4){|idx| idx * 2}
新しい配列を作る。引数に数を指定すると、指定された数の要素がある配列になる。第2引数を指定すると、あらかじめ値を入れることもできる。3つ目は4つの要素数のarrayを作って、そこにあらかじめ、インデックス*2を入れていく記述。これで要素の中にあらかじめ、0,2,4,6を格納できる。
unshift#Array
array.unshift
配列の頭に要素を追加する。