Ruby 配列内で指定した値が最初に見つかった位置を取得する

Rubyで、配列内で指定した値が最初に見つかった位置を取得するソースコードを記述してます。「index」で条件に対象の値を指定することで可能です。
環境
- OS windows11 home
- ruby 3.1.3p185
配列内で指定した値が最初に見つかった位置を取得
配列内で指定した値が最初に見つかった位置を取得するには「index」を使用します。
配列.index { 条件 }
実際に使用してみます。
arr = [1, 1, 5, 5, 1]
p arr.index { |v| v == 1 }
# 0
p arr.index { |v| v == 5 }
# 2
p arr
# [1, 1, 5, 5, 1]
位置が取得されていることが確認できます。
値が存在しない場合
指定した値が存在しない場合は、「nil」が返ります。
arr = [1, 1, 5, 5, 1]
p arr.index { |v| v == 2 }
# nil
最後に見つかった位置を取得
逆に最後に見つかった位置を取得するには「rindex」を使用します。
arr = [1, 1, 5, 5, 1]
p arr.rindex { |v| v == 1 }
# 4
p arr.rindex { |v| v == 5 }
# 3
-
前の記事
kotlin エラー「error: null can not be a value of a non-null type String」の解決方法 2022.12.17
-
次の記事
MariaDB 文字列からビット数を確認する 2022.12.18
コメントを書く