mapメソッドについて下記URL先を参照致しました。
http://ref.xaio.jp/ruby/classes/array/map
mapとmap!メソッドの各々の説明が、
mapメソッドは、要素の数だけ繰り返しブロックを実行し、ブロックの戻り値を集めた配列を作成して返します。
map!メソッドは、要素の数だけ繰り返しブロックを実行し、各要素をブロックの戻り値と入れ替えます。
とあり、同じ処理を実行したところ、同じ結果が返ってきました。
ruby
1numbers = [104, 101, 108, 108, 111] 2p numbers.map {|item| item.to_s(16) } 3 4 5numbers = [104, 101, 108, 108, 111] 6numbers.map! {|item| item.to_s(16) } 7p numbers 8 9 10#実行結果 11["68", "65", "6c", "6c", "6f"] 12["68", "65", "6c", "6c", "6f"] 13
一体mapとmap!の何が違うのか説明文からよく理解出来ません。もう少しかみくだいて教えていただけませんでしょうか?
また、なぜmap!ではnumbers.map! {|item| item.to_s(16) }をpで出力せず、numbersをpで出力しているのでしょうか?
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。