Ruby配列の処理、要素への変換


数値を含む配列を宣言して出力
arr = [1,2,3]
puts arr
結果

より長いシナリオを宣言
arr = [1,2,3,4,5,6,7,8,9,10,11]
puts arr
結果

1から100まで発表しなければならないなら...?
ちょっと油断するとオールになりますが、安心してください.rubyはrangeを提供します.
arr = (1..100).to_a
puts arr
結果

...

配列内のすべての数字を文字に変換する必要がある場合...?
単純に近づくとこうなります.
arr = (1..10).to_a
puts "인티저 #{arr}"
arr.each_with_index do |el, i|
  arr[i] = el.to_s
end
puts "스트링 #{arr}"
結果

結果はよかったですが、文法はちょっとCです.
もっとうまくできますか?
arr = (1..10).to_a
puts "인티저 #{arr}"
arr = arr.map(&:to_s)
puts "스트링 #{arr}"
結果

ちょっとルビーが.
arr = arr... 私はこの形が好きではありません.
map関数にrubyの強力な機能の一つである棒(=感嘆符)を貼り付けます.
arr = (1..10).to_a
puts "인티저 #{arr}"
arr.map!(&:to_s)
puts "스트링 #{arr}"
結果

棒がなければ、ストライプ配列は戻されますが、受け入れられた変数がないため、印刷されません.(次のコード)
arr = (1..10).to_a
puts "인티저 #{arr}"
arr.map(&:to_s)
puts "스트링 #{arr}"
結果

mapと似ていますが、クエリーのように操作するselectの方法もあります.
たとえば、配列内で偶数のみを選択し、別の配列を作成する場合は?
arr = (1..10).to_a
puts "원본배열 #{arr}"
arr.select!{|a| a%2==0}
puts "셀렉트결과 #{arr}"
結果

ここにも棒を貼るのを忘れないでください.
オリジナルを維持しながらコピーしたい場合は、感嘆符を持たずに他の変数に割り当てることができます.(下)
arr = (1..10).to_a
puts "원본배열 #{arr}"
b = arr.select{|a| a%2==0}
puts "셀렉트결과 arr #{arr}"
puts "셀렉트결과 b #{b}"
結果