ライブラリ
- ビルトイン (306)
キーワード
- bsearch (20)
-
bsearch
_ index (20) - each (24)
-
each
_ index (24) - fetch (36)
-
fetch
_ values (2) - fill (72)
-
find
_ index (36) - rindex (36)
検索結果
先頭5件
-
Array
# find _ index(val) -> Integer | nil (6244.0) -
条件に一致する最初の要素の位置を返します。
...します。
@param val 位置を知りたいオブジェクトを指定します。
指定された val と == で等しい最初の要素の位置を返します。
等しい要素がひとつもなかった場合は nil を返します。
//emlist[例][ruby]{
p [1, 0, 0, 1, 0].index(1) #=> 0......p [1, 0, 0, 0, 0].index(1) #=> 0
p [0, 0, 0, 0, 0].index(1) #=> nil
//}
ブロックが与えられた場合には、各要素を引数として順にブロックを実行し、
ブロックが真を返した最初の要素の位置を返します。
一つも真にならなかった場合は......nil を返します。
//emlist[例][ruby]{
p [0, 1, 0, 1, 0].index {|v| v > 0} #=> 1
//}
引数、ブロックのどちらも与えられなかった場合は、
Enumerator のインスタンスを返します。
@see Array#rindex... -
Array
# each _ index -> Enumerator (6223.0) -
各要素のインデックスに対してブロックを評価します。
...を評価します。
以下と同じです。
//emlist[例][ruby]{
(0 ... ary.size).each do |index|
# ....
end
//}
ブロックが与えられなかった場合は、自身と each_index から生成した
Enumerator オブジェクトを返します。
@see Array#each, Array#reverse_each... -
Array
# rindex -> Enumerator (6220.0) -
指定された val と == で等しい最後の要素の位置を返します。 等しい要素がひとつもなかった時には nil を返します。
...身と rindex から生成した
Enumerator オブジェクトを返します。
@param val オブジェクトを指定します。
//emlist[例][ruby]{
p [1, 0, 0, 1, 0].rindex(1) #=> 3
p [1, 0, 0, 0, 0].rindex(1) #=> 0
p [0, 0, 0, 0, 0].rindex(1) #=> nil
p [0, 1, 0, 1, 0].rindex {|v| v > 0......} #=> 3
//}
@see Array#index... -
Array
# rindex {|item| . . . } -> Integer | nil (6220.0) -
指定された val と == で等しい最後の要素の位置を返します。 等しい要素がひとつもなかった時には nil を返します。
...身と rindex から生成した
Enumerator オブジェクトを返します。
@param val オブジェクトを指定します。
//emlist[例][ruby]{
p [1, 0, 0, 1, 0].rindex(1) #=> 3
p [1, 0, 0, 0, 0].rindex(1) #=> 0
p [0, 0, 0, 0, 0].rindex(1) #=> nil
p [0, 1, 0, 1, 0].rindex {|v| v > 0......} #=> 3
//}
@see Array#index... -
Array
# rindex(val) -> Integer | nil (6220.0) -
指定された val と == で等しい最後の要素の位置を返します。 等しい要素がひとつもなかった時には nil を返します。
...身と rindex から生成した
Enumerator オブジェクトを返します。
@param val オブジェクトを指定します。
//emlist[例][ruby]{
p [1, 0, 0, 1, 0].rindex(1) #=> 3
p [1, 0, 0, 0, 0].rindex(1) #=> 0
p [0, 0, 0, 0, 0].rindex(1) #=> nil
p [0, 1, 0, 1, 0].rindex {|v| v > 0......} #=> 3
//}
@see Array#index... -
Array
# fetch _ values(*indexes) { |index| . . . } -> Array (333.0) -
引数で指定されたインデックスに対する値の配列を返します。
...結果の値を使用します。
* ブロックが与えられていない場合、IndexError が発生します。
@param indexes 取得したい要素のインデックスを指定します。
@raise IndexError ブロックが与えられてない時に、範囲外のインデックスを引......mlist[例][ruby]{
ary = ["a", "b", "c"]
ary.fetch_values(0, 2) # => ["a", "c"]
ary.fetch_values(-1, 1) # => ["d", "b"]
ary.fetch_values(0, 10) # => index 10 outside of array bounds: -3...3 (IndexError)
ary.fetch_values(0, 10) { |i| i.to_s } # => ["a", "10"]
//}
@see Array#values_at, Array#fetch... -
Array
# fill(range) {|index| . . . } -> self (236.0) -
配列の指定された範囲すべてに val をセットします。
...70100]
//}
@param val 自身に設定したいオブジェクトを指定します。
@param start val を設定する範囲の始点のインデックスを整数で指定します。start の値が負の時には末尾からのインデックスと見倣します。末尾の要素が -1 番目......になります。
@param length val を設定する要素の個数を指定します。nil が指定された時は配列の終りまでの長さを意味します。
@param range val を設定する範囲を Range オブジェクトで指定します。... -
Array
# fill(start , length = nil) {|index| . . . } -> self (236.0) -
配列の指定された範囲すべてに val をセットします。
...70100]
//}
@param val 自身に設定したいオブジェクトを指定します。
@param start val を設定する範囲の始点のインデックスを整数で指定します。start の値が負の時には末尾からのインデックスと見倣します。末尾の要素が -1 番目......になります。
@param length val を設定する要素の個数を指定します。nil が指定された時は配列の終りまでの長さを意味します。
@param range val を設定する範囲を Range オブジェクトで指定します。... -
Array
# fetch _ values(*indexes) -> Array (233.0) -
引数で指定されたインデックスに対する値の配列を返します。
...結果の値を使用します。
* ブロックが与えられていない場合、IndexError が発生します。
@param indexes 取得したい要素のインデックスを指定します。
@raise IndexError ブロックが与えられてない時に、範囲外のインデックスを引......mlist[例][ruby]{
ary = ["a", "b", "c"]
ary.fetch_values(0, 2) # => ["a", "c"]
ary.fetch_values(-1, 1) # => ["d", "b"]
ary.fetch_values(0, 10) # => index 10 outside of array bounds: -3...3 (IndexError)
ary.fetch_values(0, 10) { |i| i.to_s } # => ["a", "10"]
//}
@see Array#values_at, Array#fetch... -
Array
# fill {|index| . . . } -> self (216.0) -
すべての要素に val をセットします。
...ットする
ことに注意してください。
val の代わりにブロックを指定するとブロックの評価結果を値とします。
@param val 自身にセットしたいオブジェクトを指定します。
//emlist[例][ruby]{
a = [0, 1, 2, 3, 4]
a.fill(10)
p a #=> [10, 10, 10,... -
Array
# bsearch -> Enumerator (180.0) -
ブロックの評価結果で範囲内の各要素の判定を行い、条件を満たす値を二分探 索(計算量は O(log n))で検索します。要素が見つからない場合は nil を返し ます。self はあらかじめソートしておく必要があります。
...本メソッドはブロックを評価した結果により以下のいずれかのモードで動作し
ます。
* find-minimum モード
* find-any モード
find-minimum モード(特に理由がない限りはこのモードを使う方がいいでしょ
う)では、条件判定の結......y.bsearch {|x| x >= -1 } # => 0
ary.bsearch {|x| x >= 100 } # => nil
//}
find-any モードは bsearch(3) のように動作します。ブロックは真偽値
ではなく、以下のような数値を返す必要があります。求める要素が配列の i 番目
から j-1 番目までに......す。
//emlist[例][ruby]{
ary = [0, 4, 7, 10, 12]
# 4 <= v < 8 になる要素を検索
ary.bsearch {|x| 1 - x / 4 } # => 4 or 7
# 8 <= v < 10 になる要素を検索
ary.bsearch {|x| 4 - x / 2 } # => nil
//}
上記の 2 つのモードを混在して使用しないでください(ブロック...