要素を置き換える
【開発環境】
OS:Win11(64ビット)
Ruby 3.0.1
VSCodeバージョン: 1.57.1
【置き換え】
・配列に含まれる要素を置き換えるには
Arrayオブジェクト[index] = 新しい要素
「start」に指定したインデックスから「end」に指定したインデックスまでの要素を新しい要素で置換します。新しい要素としては配列を指定したり単独の値を指定が可能です。
例文
ary = ["東京", "大阪", "名古屋", "福岡", "札幌"]
ary[1..2] = ["osaka", "nagoya"]
上記の場合は対象の配列の1番目から2番目の要素を、2つの新しい要素を持つ配列で置き換えています。
・結果
ary = ["東京", "osaka", "nagoya", "福岡", "札幌"]
・置換対象の要素数と置換する要素の数が異なる場合
ary = ["東京", "大阪", "名古屋", "福岡", "札幌"]
ary[1..2] = ["osaka", "nagoya", "yokohama"]
上記の場合は対象の配列の1番目から2番目の要素を、3つの新しい要素を持つ配列で置き換えています。
結果
ary = ["東京", "osaka", "nagoya", "yokohama", "福岡", "札幌"]
・単独の値で置き換えることも可能です。その中でも置き換える値として「nil」を指定した場合にはその要素は削除される
例文
ary = ["東京", "大阪", "名古屋", "福岡", "札幌"]
ary[1..2] = nil
上記の場合は対象の配列の1番目から2番目の要素を「nil」で置き換えています。
・結果
ary = ["東京", "福岡", "札幌"]
サンプルプログラム
【開始インデックスと要素数を指定して新しい値で置き換える】
指定した開始インデックスと要素数を指定して新しい値に置き換えるには次の構文を使う
・構文
Arrayオブジェクト[start, len] = 新しい要素
「start」に指定したインデックスから「len」要素数分の要素を新しい要素で置換します。
新しい要素としては配列を指定したり単独の値を指定が可能です。
・例文
ary = ["東京", "大阪", "名古屋", "福岡", "札幌"]
ary[1, 2] = ["osaka", "nagoya"]
上記の場合は対象の配列の1番目から2つ分の要素を、2つの新しい要素を持つ配列で置き換えています。
・結果
ary = ["東京", "osaka", "nagoya", "福岡", "札幌"]
サンプルプログラム