Ruby_Array_48
この記事は、以下のドキュメントを改変(自分なりに整理)して利用しています。
class Array (Ruby 3.1 リファレンスマニュアル)
インスタンスメソッド
replace(another) -> self
- 配列の内容を配列anotherの内容で置き換える
- 配列以外の(暗黙の型変換が行えない)オブジェクトを指定した場合、TypeErrorが発生する
irb(main):001:0> arr = ['a', 1] => ["a", 1] irb(main):002:0> brr = ['b', 2] => ["b", 2] irb(main):003:0> arr.replace(brr) => ["b", 2] irb(main):004:0> arr => ["b", 2] irb(main):005:0> brr[0].capitalize! => "B" irb(main):006:0> brr << 'c' => ["B", 2, "c"] irb(main):007:0> arr => ["B", 2]
irb(main):001:0> [].replace('a') Traceback (most recent call last): 5: from /Users/mfham/.rbenv/versions/3.0.0/bin/irb:23:in `<main>' 4: from /Users/mfham/.rbenv/versions/3.0.0/bin/irb:23:in `load' 3: from /Users/mfham/.rbenv/versions/3.0.0/lib/ruby/gems/3.0.0/gems/irb-1.3.0/exe/irb:11:in `<top (required)>' 2: from (irb):1:in `<main>' 1: from (irb):1:in `replace' TypeError (no implicit conversion of String into Array)