fetch(nth) -> object
[permalink][rdoc][edit]fetch(nth, ifnone) -> object
fetch(nth) {|nth| ... } -> object
-
nth 番目の要素を返します。
Array#[](nth) とは nth 番目の要素が存在しない場合の振舞いが異なります。最初の形式では、例外 IndexError が発生します。二番目の形式では、引数 ifnone を返します。三番目の形式では、ブロックを評価した結果を返します。
- [PARAM] nth:
- 取得したい要素のインデックスを整数で指定します。整数以外のオブジェクトを指定した場合は to_int メソッドによる暗黙の型変換を試みます。
- [PARAM] ifnone:
- 要素が存在しなかった場合に返すべき値を指定します。
- [EXCEPTION] TypeError:
- 引数 nth に整数以外の(暗黙の型変換が行えない)オブジェクトを指定した場合に発生します。
- [EXCEPTION] IndexError:
- 引数 ifnone もブロックも指定しておらず、 nth 番目の要素も存在しなかった場合に発生します。
a = [1, 2, 3, 4, 5] begin p a.fetch(10) rescue IndexError => err puts err #=> index 10 out of array end p a.fetch(10, 999) #=> 999 result = a.fetch(10){|nth| print "#{nth} はありません。\n" 999 } p result #=> 999