るりまサーチ (Ruby 2.5.0)

最速Rubyリファレンスマニュアル検索!
162件ヒット [1-100件を表示] (0.031秒)
トップページ > クラス:Array[x] > バージョン:2.5.0[x] > クエリ:array[x]

別のキーワード

  1. array fill
  2. array []
  3. array sample
  4. array new
  5. array []=

ライブラリ

キーワード

検索結果

<< 1 2 > >>

Array#pop(n) -> Array (27541.0)

自身の末尾から要素を取り除いてそれを返します。 引数を指定した場合はその個数だけ取り除き、それを配列で返します。

...例:
array
= [1, [2, 3], 4]
p array.pop # => 4
p array.pop # => [2, 3]
p array # => [1]

p array.pop # => 1
p array.pop # => nil
p array # => []
array
= [1, 2, 3]
p array.pop(2) #=> [2, 3]
p array...
...#=> [1]

@see Array#push, Array#shift, Array#unshift...

Array#to_a -> Array (27493.0)

self を返します。ただし、Array のサブクラスのインスタンスに対して呼ばれた時は、 自身を Array に変換したものを返します。

...Array のサブクラスのインスタンスに対して呼ばれた時は、
自身を Array に変換したものを返します。

例:

class SubArray < Array; end
ary1 = Array([1, 2, 3, 4])
ary2 = SubArray([1, 2, 3, 4])

ary1.to_a # => [1, 2, 3, 4]
ary1.to_a.class # => Array...
...ary2.to_a # => [1, 2, 3, 4]
ary2.to_a.class # => Array

@see Array#to_ary...

Array#slice(pos, len) -> Array | nil (27418.0)

指定された自身の部分配列を返します。Array#[] と同じです。

...指定された自身の部分配列を返します。Array#[] と同じです。

@param pos Array#[] と同じです。

@param len Array#[] と同じです。

@param range Array#[] と同じです。

例:

p [0, 1, 2].slice(0, 2) #=> [0, 1]
p [0, 1, 2].slice(2..3) #=> [2]
p [0,...

Array#slice(range) -> Array | nil (27418.0)

指定された自身の部分配列を返します。Array#[] と同じです。

...指定された自身の部分配列を返します。Array#[] と同じです。

@param pos Array#[] と同じです。

@param len Array#[] と同じです。

@param range Array#[] と同じです。

例:

p [0, 1, 2].slice(0, 2) #=> [0, 1]
p [0, 1, 2].slice(2..3) #=> [2]
p [0,...

Array.new(ary) -> Array (27406.0)

指定された配列 ary を複製して返します。 Array#dup 同様 要素を複製しない浅い複製です。

...れた配列 ary を複製して返します。
Array
#dup 同様 要素を複製しない浅い複製です。

@param ary 複製したい配列を指定します。

例:

p Array.new([1,2,3]) # => [1,2,3]

a = ["a", "b", "c"]
b = Array.new(a)
a.each{|s| s.capitalize! }
p a...

絞り込み条件を変える

Array.try_convert(obj) -> Array | nil (27379.0)

to_ary メソッドを用いて obj を配列に変換しようとします。

...引数が配列であるかどうかを調べるために使えます。

例:

Array
.try_convert([1]) # => [1]
Array
.try_convert("1") # => nil

if tmp = Array.try_convert(arg)
# the argument is an array
elsif tmp = String.try_convert(arg)
# the argument is a string
end...

Array#shift(n) -> Array (27361.0)

配列の先頭の要素を取り除いてそれを返します。 引数を指定した場合はその個数だけ取り除き、それを配列で返します。

...ます。

@raise ArgumentError 引数に負の数を指定した場合に発生します。



例:

a = [0, 1, 2, 3, 4]
p a.shift #=> 0
p a #=> [1, 2, 3, 4]

p [].shift #=> nil
p [].shift(1) #=> []

@see Array#push, Array#pop, Array#unshift...

Array.[](*item) -> Array (27361.0)

引数 item を要素として持つ配列を生成して返します。

...ます。

Array
のサブクラスを作成したしたときに、そのサブクラスのインスタンスを作成
しやすくするために用意されている。

@param item 配列の要素を指定します。

例:

Array
[1, 2, 3] #=> [1, 2, 3]

class SubArray < Array
# ......
...end
p SubArray[1, 2, 3] # => [1, 2, 3]...

Array.new(size) {|index| ... } -> Array (27361.0)

長さ size の配列を生成し、各要素のインデックスを引数としてブロックを実行し、 各要素の値をブロックの評価結果に設定します。

...きます。

@param size 配列の長さを数値で指定します。

例:
ary = Array.new(3){|index| "hoge#{index}"}
p ary #=> ["hoge0", "hoge1", "hoge2"]

例:

ary = Array.new(3){ "foo" }
p ary #=> ["foo", "foo", "foo"]
ary[0].capit...

Array.new(size = 0, val = nil) -> Array (27346.0)

長さ size の配列を生成し、各要素を val で初期化して返します。

...指します。

@param size 配列の長さを数値で指定します。

@param val 配列の要素の値を指定します。

例:

ary = Array.new(3, "foo")
p ary #=> ["foo", "foo", "foo"]
ary[0].capitalize!
p ary #=> ["Foo", "Foo", "Foo"...

絞り込み条件を変える

Array#combination(n) {|c| block } -> Array (27343.0)

サイズ n の組み合わせをすべて生成し、それを引数としてブロックを実行します。

...],[3,4]]
a.combination(3).to_a #=> [[1,2,3],[1,2,4],[1,3,4],[2,3,4]]
a.combination(4).to_a #=> [[1,2,3,4]]
a.combination(0).to_a #=> [[]]: one combination of length 0
a.combination(5).to_a #=> [] : no combinations of length 5

@see Array#permutation, Array#repeated_combination...

Array#permutation(n = self.length) { |p| block } -> Array (27343.0)

サイズ n の順列をすべて生成し,それを引数としてブロックを実行します。

...1,2],[1,3],[2,1],[2,3],[3,1],[3,2]]
a.permutation(3).to_a #=> [[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]
a.permutation(0).to_a #=> [[]]: one permutation of length 0
a.permutation(4).to_a #=> [] : no permutations of length 4

@see Array#combination, Array#repeated_permutation...

Array#repeated_combination(n) { |c| ... } -> Array (27343.0)

サイズ n の重複組み合わせをすべて生成し、それを引数としてブロックを実行 します。

...# [1,1,3,3],[1,2,2,2],[1,2,2,3],[1,2,3,3],[1,3,3,3],
# [2,2,2,2],[2,2,2,3],[2,2,3,3],[2,3,3,3],[3,3,3,3]]
a.repeated_combination(0).to_a #=> [[]] # one combination of length 0

@see Array#repeated_permutation, Array#combination...

Array#repeated_permutation(n) { |p| ... } -> Array (27343.0)

サイズ n の重複順列をすべて生成し,それを引数としてブロックを実行します。

...[1,1],[1,2],[2,1],[2,2]]
a.repeated_permutation(3).to_a #=> [[1,1,1],[1,1,2],[1,2,1],[1,2,2],
# [2,1,1],[2,1,2],[2,2,1],[2,2,2]]
a.repeated_permutation(0).to_a #=> [[]] # one permutation of length 0

@see Array#repeated_combination, Array#permutation...

Array#concat(*other_arrays) -> self (27331.0)

other_arrays の要素を自身の末尾に破壊的に連結します。

...other_arrays の要素を自身の末尾に破壊的に連結します。

@param other_arrays 自身と連結したい配列を指定します。

[ "a", "b" ].concat( ["c", "d"] ) #=> [ "a", "b", "c", "d" ]
[ "a" ].concat( ["b"], ["c", "d"] ) #=> [ "a", "b", "c", "d" ]
[ "a" ].concat...
...#=> [ "a" ]

a = [ 1, 2, 3 ]
a.concat( [ 4, 5 ] )
a #=> [ 1, 2, 3, 4, 5 ]

a = [ 1, 2 ]
a.concat(a, a) #=> [1, 2, 1, 2, 1, 2]

see Array#+...

絞り込み条件を変える

Array#first(n) -> Array (27328.0)

先頭の n 要素を配列で返します。n は 0 以上でなければなりません。

...合に発生します。

@raise ArgumentError n が負値の場合発生します。

ary = [0, 1, 2]
p ary.first(0)
p ary.first(1)
p ary.first(2)
p ary.first(3)
p ary.first(4)
# => []
[0]
[0, 1]
[0, 1, 2]
[0, 1, 2]

@see Array#last...

Array#last(n) -> Array (27328.0)

末尾の n 要素を配列で返します。n は 0 以上でなければなりません。

...場合に発生します。

@raise ArgumentError n が負値の場合発生します。

ary = [0, 1, 2]
p ary.last(0)
p ary.last(1)
p ary.last(2)
p ary.last(3)
p ary.last(4)
# => []
[2]
[1, 2]
[0, 1, 2]
[0, 1, 2]

@see Array#first...

Array#shuffle -> Array (27328.0)

配列の要素をランダムシャッフルして,その結果を配列として返します。

...ことができます。

例:

a = [ 1, 2, 3 ] #=> [1, 2, 3]
a.shuffle #=> [2, 3, 1]
rng = Random.new
rng2 = rng.dup # RNGを複製
# 以下の2つは同じ結果を返す
[1,2,3].shuffle(random: rng)
[1,2,3].shuffle(random: rng2)

@see Array#shuffle!...

Array#shuffle(random: Random) -> Array (27328.0)

配列の要素をランダムシャッフルして,その結果を配列として返します。

...ことができます。

例:

a = [ 1, 2, 3 ] #=> [1, 2, 3]
a.shuffle #=> [2, 3, 1]
rng = Random.new
rng2 = rng.dup # RNGを複製
# 以下の2つは同じ結果を返す
[1,2,3].shuffle(random: rng)
[1,2,3].shuffle(random: rng2)

@see Array#shuffle!...

Array#sort -> Array (27328.0)

配列の内容をソートします。要素同士の比較は <=> 演算子を使って行います。sort はソートされた配列を生成して返します。 sort! は self を破壊的にソートし、self を返します。

...こうなる)
p ary2.sort{|a, b| a.to_i <=> b.to_i } #=> ["7", "8", "9", "10", "11"] (ブロックを使って数字としてソート)

# sort_by を使っても良い
p ary2.sort_by{|x| x.to_i } #=> ["7", "8", "9", "10", "11"]

@see Enumerable#sort_by
, Array#sort_by!...

絞り込み条件を変える

Array#sort {|a, b| ... } -> Array (27328.0)

配列の内容をソートします。要素同士の比較は <=> 演算子を使って行います。sort はソートされた配列を生成して返します。 sort! は self を破壊的にソートし、self を返します。

...こうなる)
p ary2.sort{|a, b| a.to_i <=> b.to_i } #=> ["7", "8", "9", "10", "11"] (ブロックを使って数字としてソート)

# sort_by を使っても良い
p ary2.sort_by{|x| x.to_i } #=> ["7", "8", "9", "10", "11"]

@see Enumerable#sort_by
, Array#sort_by!...

Array#&(other) -> Array (27325.0)

集合の積演算です。両方の配列に含まれる要素からなる新しい配列を返 します。重複する要素は取り除かれます。

...場合は to_ary メソッドによ
る暗黙の型変換を試みます。

@raise TypeError 引数に配列以外の(暗黙の型変換が行えない)オブジェクトを
指定した場合に発生します。

[1, 1, 2, 3] & [3, 1, 4] #=> [1, 3]

@see Array#|...

Array#assoc(key) -> Array | nil (27325.0)

配列の配列を検索して、その 0 番目の要素が key に == で等しい 最初の要素を返します。該当する要素がなければ nil を返します。

...。該当する要素がなければ nil を返します。

@param key 検索するオブジェクトを指定します。

ary = [[1,15], [2,25], [3,35]]
p ary.assoc(2) # => [2, 25]
p ary.assoc(100) # => nil
p ary.assoc(15) # => nil

@see Array#rassoc...

Array#rassoc(obj) -> Array | nil (27325.0)

自身が配列の配列であると仮定して、要素の配列でインデックス 1 の要素が obj に等しいものを検索し見つかった最初の要素を返 します。該当する要素がなければ nil を返します。

...た最初の要素を返
します。該当する要素がなければ nil を返します。

比較は == 演算子を使って行われます。

@param obj 検索するオブジェクトを指定します。

a = [[15,1], [25,2], [35,3]]
p a.rassoc(2) # => [25, 2]

@see Array#assoc...

Array#rotate(cnt = 1) -> Array (27325.0)

cnt で指定したインデックスの要素が先頭になる配列を新しく作成します。 cnt より前の要素は末尾に移動します。cnt に負の数を指定した場合、逆の操 作を行います。

...します。

例:

a = [ "a", "b", "c", "d" ]
a.rotate # => ["b", "c", "d", "a"]
a # => ["a", "b", "c", "d"]
a.rotate(2) # => ["c", "d", "a", "b"]
a.rotate(-1) # => ["d", "a", "b", "c"]
a.rotate(-3) # => ["b", "c", "d", "a"]

@see Array#rotate!...

絞り込み条件を変える

Array#transpose -> Array (27325.0)

自身を行列と見立てて、行列の転置(行と列の入れ換え)を行いま す。転置した配列を生成して返します。空の配列に対しては空の配列を生 成して返します。

...e
# => [[1, 3, 5], [2, 4, 6]]

p [].transpose
# => []

p [1,2,3].transpose

# => -:1:in `transpose': cannot convert Fixnum into Array (TypeError)
from -:1

p [[1,2],
[3,4,5],
[6,7]].transpose
# => -:3:in `transpose': element size differ (3 should...

Array#|(other) -> Array (27325.0)

集合の和演算です。両方の配列にいずれかに含まれる要素を全て含む新し い配列を返します。重複する要素は取り除かれます。

...o_ary メソッドによ
る暗黙の型変換を試みます。

@raise TypeError 引数に配列以外の(暗黙の型変換が行えない)オブジェクトを
指定した場合に発生します。

[1, 1, 4, 2, 3] | [5, 4, 5] #=> [1, 4, 2, 3, 5]

@see Array#&...

Array#*(times) -> Array (27313.0)

配列の内容を times 回 繰り返した新しい配列を作成して返します。 値はコピーされないことに注意してください。

配列の内容を times 回 繰り返した新しい配列を作成して返します。
値はコピーされないことに注意してください。

@param times 繰り返したい回数を整数で指定します。
整数以外のオブジェクトを指定した場合は to_int メソッドによ
る暗黙の型変換を試みます。

@raise TypeError 引数に整数以外の(暗黙の型変換が行えない)オブジェクトを
指定した場合に発生します。

@raise ArgumentError 引数に負の数を指定した場合に発生します。

p [1, 2,...

Array#[](range) -> Array | nil (27310.0)

Range オブジェクト range の範囲にある要素からなる部分配列を返します。 range の first の値が配列の範囲に収まらない場合 nil を返します。 range の first が end より後にある場合には空の配列を返します。

Range オブジェクト range の範囲にある要素からなる部分配列を返します。
range の first の値が配列の範囲に収まらない場合 nil を返します。
range の first が end より後にある場合には空の配列を返します。

@param range 生成したい部分配列の範囲を Range オブジェクトで指定します。
range の first や end の値が負の時には末尾からのインデックスと見倣します。末尾
の要素が -1 番目になります。
end の値が配列の範囲を越える時には、越...

Array#[](start, length) -> Array | nil (27310.0)

start 番目から length 個の要素を含む部分配列を返します。 length が負の時、start が自身の範囲を越えた時には nil を返します。

start 番目から length 個の要素を含む部分配列を返します。
length が負の時、start が自身の範囲を越えた時には nil を返します。

@param start 生成したい部分配列の先頭のインデックスを整数で指定します。
start の値が負の時には末尾からのインデックスと見倣します。
末尾の要素が -1 番目になります。
整数以外のオブジェクトを指定した場合は to_int メソッドによ
る暗黙の型変換を試みます。

@param length 生成したい部分配列...

絞り込み条件を変える

Array#clone -> Array (27310.0)

レシーバと同じ内容を持つ新しい配列を返します。

レシーバと同じ内容を持つ新しい配列を返します。

clone は frozen tainted singleton-class の情報も含めてコピーしますが、
dup は内容だけをコピーします。
またどちらのメソッドも要素それ自体のコピーはしません。
つまり「浅い(shallow)」コピーを行います。

ary = ['string']
p ary #=> ["string"]
copy = ary.dup
p copy #=> ["string"]

ary[0][0...3] = ''
p ar...

Array#dup -> Array (27310.0)

レシーバと同じ内容を持つ新しい配列を返します。

レシーバと同じ内容を持つ新しい配列を返します。

clone は frozen tainted singleton-class の情報も含めてコピーしますが、
dup は内容だけをコピーします。
またどちらのメソッドも要素それ自体のコピーはしません。
つまり「浅い(shallow)」コピーを行います。

ary = ['string']
p ary #=> ["string"]
copy = ary.dup
p copy #=> ["string"]

ary[0][0...3] = ''
p ar...

Array#max(n) -> Array (27310.0)

最大の要素、もしくは最大の n 要素を返します。 全要素が互いに <=> メソッドで比較できることを仮定しています。

最大の要素、もしくは最大の n 要素を返します。
全要素が互いに <=> メソッドで比較できることを仮定しています。

引数を指定しない形式では要素が存在しなければ nil を返します。
引数を指定する形式では、空の配列を返します。

例:
[].max #=> nil
[].max(1) #=> []
[2, 5, 3].max #=> 5
[2, 5, 3].max(2) #=> [5, 3]

@param n 取得する要素数。

@see Enumerable#max

Array#max(n) {|a, b| ... } -> Array (27310.0)

ブロックの評価結果で各要素の大小判定を行い、最大の要素、もしくは最小の n 要素を返します。 引数を指定しない形式では要素が存在しなければ nil を返します。 引数を指定する形式では、空の配列を返します。

ブロックの評価結果で各要素の大小判定を行い、最大の要素、もしくは最小の
n 要素を返します。
引数を指定しない形式では要素が存在しなければ nil を返します。
引数を指定する形式では、空の配列を返します。

ブロックの値は、a > b のとき正、
a == b のとき 0、a < b のとき負の整数を、期待しています。

例:
[].max {|a, b| a <=> b } #=> nil
[].max(1) {|a, b| a <=> b } #=> []

ary = %w(albatross dog horse)
ary.max {|a, b| a.lengt...

Array#min(n) -> Array (27310.0)

最小の要素、もしくは最小の n 要素を返します。 全要素が互いに <=> メソッドで比較できることを仮定しています。

最小の要素、もしくは最小の n 要素を返します。
全要素が互いに <=> メソッドで比較できることを仮定しています。

引数を指定しない形式では要素が存在しなければ nil を返します。
引数を指定する形式では、空の配列を返します。

例:
[].min #=> nil
[].min(1) #=> []
[2, 5, 3].min #=> 2
[2, 5, 3].min(2) #=> [2, 3]

@param n 取得する要素数。

@see Enumerable#min

絞り込み条件を変える

Array#min(n) {|a, b| ... } -> Array (27310.0)

ブロックの評価結果で各要素の大小判定を行い、最小の要素、もしくは最小の n 要素を返します。 引数を指定しない形式では要素が存在しなければ nil を返します。 引数を指定する形式では、空の配列を返します。

ブロックの評価結果で各要素の大小判定を行い、最小の要素、もしくは最小の
n 要素を返します。
引数を指定しない形式では要素が存在しなければ nil を返します。
引数を指定する形式では、空の配列を返します。

ブロックの値は、a > b のとき正、a == b のとき 0、
a < b のとき負の整数を、期待しています。

例:
[].min {|a, b| a <=> b } #=> nil
[].min(1) {|a, b| a <=> b } #=> []

ary = %w(albatross dog horse)
ary.min {|a, b| a.lengt...

Array#sample(n) -> Array (27310.0)

配列の要素を1個(引数を指定した場合は自身の要素数を越えない範囲で n 個) ランダムに選んで返します。

配列の要素を1個(引数を指定した場合は自身の要素数を越えない範囲で n 個)
ランダムに選んで返します。

重複したインデックスは選択されません。そのため、自身がユニークな配列の
場合は返り値もユニークな配列になります。

配列が空の場合、無引数の場合は nil を、個数を指定した場合は空配列を返します。

srand()が有効です。

@param n 取得する要素の数を指定します。自身の要素数(self.length)以上の
値を指定した場合は要素数と同じ数の配列を返します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
...

Array#sample(n, random: Random) -> Array (27310.0)

配列の要素を1個(引数を指定した場合は自身の要素数を越えない範囲で n 個) ランダムに選んで返します。

配列の要素を1個(引数を指定した場合は自身の要素数を越えない範囲で n 個)
ランダムに選んで返します。

重複したインデックスは選択されません。そのため、自身がユニークな配列の
場合は返り値もユニークな配列になります。

配列が空の場合、無引数の場合は nil を、個数を指定した場合は空配列を返します。

srand()が有効です。

@param n 取得する要素の数を指定します。自身の要素数(self.length)以上の
値を指定した場合は要素数と同じ数の配列を返します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
...

Array#slice!(range) -> Array | nil (27310.0)

指定した部分配列を自身から取り除き、取り除いた部分配列を返します。取り除く要素がなければ nil を返します。

指定した部分配列を自身から取り除き、取り除いた部分配列を返します。取り除く要素がなければ nil
を返します。

@param start 削除したい部分配列の先頭のインデックスを整数で指定します。

@param len 削除したい部分配列の長さを整数で指定します。

@param range 削除したい配列の範囲を Range オブジェクトで指定します。

例:

a = [ "a", "b", "c" ]
a.slice!(1, 2) #=> ["b", "c"]
a #=> ["a"]

a = [ "a", "...

Array#slice!(start, len) -> Array | nil (27310.0)

指定した部分配列を自身から取り除き、取り除いた部分配列を返します。取り除く要素がなければ nil を返します。

指定した部分配列を自身から取り除き、取り除いた部分配列を返します。取り除く要素がなければ nil
を返します。

@param start 削除したい部分配列の先頭のインデックスを整数で指定します。

@param len 削除したい部分配列の長さを整数で指定します。

@param range 削除したい配列の範囲を Range オブジェクトで指定します。

例:

a = [ "a", "b", "c" ]
a.slice!(1, 2) #=> ["b", "c"]
a #=> ["a"]

a = [ "a", "...

絞り込み条件を変える

Array#uniq -> Array (27310.0)

uniq は配列から重複した要素を取り除いた新しい配列を返します。 uniq! は削除を破壊的に行い、削除が行われた場合は self を、 そうでなければnil を返します。

uniq は配列から重複した要素を取り除いた新しい配列を返します。
uniq! は削除を破壊的に行い、削除が行われた場合は self を、
そうでなければnil を返します。

取り除かれた要素の部分は前に詰められます。
要素の重複判定は、Object#eql? により行われます。

p [1, 1, 1].uniq # => [1]
p [1, 4, 1].uniq # => [1, 4]
p [1, 3, 2, 2, 3].uniq # => [1, 3, 2]

ブロックが与えられた場合、ブロックが返した値が重複した要素を取り...

Array#uniq {|item| ... } -> Array (27310.0)

uniq は配列から重複した要素を取り除いた新しい配列を返します。 uniq! は削除を破壊的に行い、削除が行われた場合は self を、 そうでなければnil を返します。

uniq は配列から重複した要素を取り除いた新しい配列を返します。
uniq! は削除を破壊的に行い、削除が行われた場合は self を、
そうでなければnil を返します。

取り除かれた要素の部分は前に詰められます。
要素の重複判定は、Object#eql? により行われます。

p [1, 1, 1].uniq # => [1]
p [1, 4, 1].uniq # => [1, 4]
p [1, 3, 2, 2, 3].uniq # => [1, 3, 2]

ブロックが与えられた場合、ブロックが返した値が重複した要素を取り...

Array#+(other) -> Array (27307.0)

自身と other の内容を繋げた配列を生成して返します。

自身と other の内容を繋げた配列を生成して返します。

@param other 自身と繋げたい配列を指定します。
配列以外のオブジェクトを指定した場合は to_ary メソッドによ
る暗黙の型変換を試みます。

@raise TypeError 引数に配列以外の(暗黙の型変換が行えない)オブジェクトを
指定した場合に発生します。

a = [1, 2]
b = [8, 9]
p a + b #=> [1, 2, 8, 9]
p a #=> [1...

Array#-(other) -> Array (27307.0)

自身から other の要素を取り除いた配列を生成して返します。

自身から other の要素を取り除いた配列を生成して返します。

要素の同一性は Object#eql? により評価されます。
self 中で重複していて、other中に存在していなかった要素は、その重複が保持されます。

@param other 自身から取り除きたい要素の配列を指定します。
配列以外のオブジェクトを指定した場合は to_ary メソッドによ
る暗黙の型変換を試みます。

@raise TypeError 引数に配列以外の(暗黙の型変換が行えない)オブジェクトを
指定した場合に発生します...

Array#compact -> Array (27307.0)

compact は自身から nil を取り除いた配列を生成して返します。 compact! は自身から破壊的に nil を取り除き、変更が 行われた場合は self を、そうでなければ nil を返します。

compact は自身から nil を取り除いた配列を生成して返します。
compact! は自身から破壊的に nil を取り除き、変更が
行われた場合は self を、そうでなければ nil を返します。

ary = [1, nil, 2, nil, 3, nil]
p ary.compact #=> [1, 2, 3]
p ary #=> [1, nil, 2, nil, 3, nil]
ary.compact!
p ary #=> [1, 2, 3]
p ary.compact! #=> n...

絞り込み条件を変える

Array#flatten(lv = nil) -> Array (27307.0)

flatten は自身を再帰的に平坦化した配列を生成して返します。flatten! は 自身を再帰的かつ破壊的に平坦化し、平坦化が行われた場合は self をそうでない 場合は nil を返します。 lv が指定された場合、lv の深さまで再帰的に平坦化します。

flatten は自身を再帰的に平坦化した配列を生成して返します。flatten! は
自身を再帰的かつ破壊的に平坦化し、平坦化が行われた場合は self をそうでない
場合は nil を返します。
lv が指定された場合、lv の深さまで再帰的に平坦化します。

@param lv 平坦化の再帰の深さを整数で指定します。nil を指定した場合、再
帰の深さの制限無しに平坦化します。
整数以外のオブジェクトを指定した場合は to_int メソッドによる暗
黙の型変換を試みます。

@raise TypeError 引数に整数以外の(...

Array#product(*lists) -> Array (27307.0)

レシーバの配列と引数で与えられた配列(複数可)のそれぞれから要素を1 個ずつとって配列とし,それらのすべての配列を要素とする配列を返します。

レシーバの配列と引数で与えられた配列(複数可)のそれぞれから要素を1
個ずつとって配列とし,それらのすべての配列を要素とする配列を返します。

返される配列の長さは,レシーバと引数で与えられた配列の長さのすべての積にな
ります。


@param lists 配列。複数指定可能。

例:

[1,2,3].product([4,5]) # => [[1,4],[1,5],[2,4],[2,5],[3,4],[3,5]]
[1,2].product([1,2]) # => [[1,1],[1,2],[2,1],[2,2]]
[1,2].product([3...

Array#reverse -> Array (27307.0)

reverse は自身の要素を逆順に並べた新しい配列を生成して返します。 reverse! は自身を破壊的に並べ替えます。 reverse! は self を返します。

reverse は自身の要素を逆順に並べた新しい配列を生成して返します。
reverse! は自身を破壊的に並べ替えます。
reverse! は self を返します。

a = ["a", 2, true]
p a.reverse #=> [true, 2, "a"]
p a #=> ["a", 2, true] (変化なし)

a = ["a", 2, true]
p a.reverse! #=> [true, 2, "a"]
p a #=> [true, 2, "a"]

Array#values_at(*selectors) -> Array (27307.0)

引数で指定されたインデックスに対応する要素を配列で返します。インデッ クスに対応する値がなければ nil が要素になります。

引数で指定されたインデックスに対応する要素を配列で返します。インデッ
クスに対応する値がなければ nil が要素になります。

@param selectors インデックスを整数もしくは整数の Range で指定します。

ary = %w( a b c d e )
p ary.values_at( 0, 2, 4 ) #=> ["a", "c", "e"]
p ary.values_at( 3, 4, 5, 6, 35 ) #=> ["d", "e", nil, nil, nil]
p ary.values_at( 0, -1, -2...

Array#pop -> object | nil (27241.0)

自身の末尾から要素を取り除いてそれを返します。 引数を指定した場合はその個数だけ取り除き、それを配列で返します。

...例:
array
= [1, [2, 3], 4]
p array.pop # => 4
p array.pop # => [2, 3]
p array # => [1]

p array.pop # => 1
p array.pop # => nil
p array # => []
array
= [1, 2, 3]
p array.pop(2) #=> [2, 3]
p array...
...#=> [1]

@see Array#push, Array#shift, Array#unshift...

絞り込み条件を変える

Array#append(*obj) -> self (27166.0)

指定された obj を順番に配列の末尾に追加します。 引数を指定しなければ何もしません。

...何もしません。

@param obj 自身に追加したいオブジェクトを指定します。

array
= [1, 2, 3]
array
.push 4
array
.push [5, 6]
array
.push 7, 8
p array # => [1, 2, 3, 4, [5, 6], 7, 8]

@see Array#pop, Array#shift, Array#unshift, Array#<<...

Array#push(*obj) -> self (27166.0)

指定された obj を順番に配列の末尾に追加します。 引数を指定しなければ何もしません。

...何もしません。

@param obj 自身に追加したいオブジェクトを指定します。

array
= [1, 2, 3]
array
.push 4
array
.push [5, 6]
array
.push 7, 8
p array # => [1, 2, 3, 4, [5, 6], 7, 8]

@see Array#pop, Array#shift, Array#unshift, Array#<<...

Array#slice(nth) -> object | nil (27088.0)

指定された自身の要素を返します。Array#[] と同じです。

...指定された自身の要素を返します。Array#[] と同じです。

@param nth 要素のインデックスを整数で指定します。Array#[] と同じです。

例:

p [0, 1, 2].slice(1) #=> 1
p [0, 1, 2].slice(2) #=> 2
p [0, 1, 2].slice(10) #=> nil...

Array#bsearch_index -> Enumerator (27076.0)

ブロックの評価結果で範囲内の各要素の判定を行い、条件を満たす値の位置を 二分探索(計算量は O(log n))で検索します。要素が見つからない場合は nil を返します。self はあらかじめソートしておく必要があります。

...メソッドはArray#bsearchと同様に、ブロックを評価した結果により2
つのモードで動作します。Array#bsearch との違いは見つかった要素自
身を返すか位置を返すかのみです。各モードのより詳細な違いについては
Array
#bsearch を参照...
...| x >= 100 } # => nil
//}

//emlist[例: find-any モード][ruby]{
ary = [0, 4, 7, 10, 12]
# 4 <= v < 8 になる要素の位置を検索
ary.bsearch_index { |x| 1 - x / 4 } # => 2
# 8 <= v < 10 になる要素の位置を検索
ary.bsearch_index { |x| 4 - x / 2 } # => nil
//}

@see Array#bsearch...

Array#bsearch_index { |x| ... } -> Integer | nil (27076.0)

ブロックの評価結果で範囲内の各要素の判定を行い、条件を満たす値の位置を 二分探索(計算量は O(log n))で検索します。要素が見つからない場合は nil を返します。self はあらかじめソートしておく必要があります。

...メソッドはArray#bsearchと同様に、ブロックを評価した結果により2
つのモードで動作します。Array#bsearch との違いは見つかった要素自
身を返すか位置を返すかのみです。各モードのより詳細な違いについては
Array
#bsearch を参照...
...| x >= 100 } # => nil
//}

//emlist[例: find-any モード][ruby]{
ary = [0, 4, 7, 10, 12]
# 4 <= v < 8 になる要素の位置を検索
ary.bsearch_index { |x| 1 - x / 4 } # => 2
# 8 <= v < 10 になる要素の位置を検索
ary.bsearch_index { |x| 4 - x / 2 } # => nil
//}

@see Array#bsearch...

絞り込み条件を変える

Array#delete_at(pos) -> object | nil (27076.0)

指定された位置 pos にある要素を取り除きそれを返します。 pos が範囲外であったら nil を返します。

...指定された位置 pos にある要素を取り除きそれを返します。
pos が範囲外であったら nil を返します。

Array
#at と同様に負のインデックスで末尾から位置を指定するこ
とができます。

@param pos 削除したい要素のインデックス...
...暗黙の型変換を試みます。

@raise TypeError 引数に整数以外の(暗黙の型変換が行えない)オブジェクトを
指定した場合に発生します。

array
= [0, 1, 2, 3, 4]
array
.delete_at 2
p array #=> [0, 1, 3, 4]...

Array#sum(init=0) -> object (27076.0)

要素の合計を返します。例えば [e1, e2, e3].sum は init + e1 + e2 + e3 を返します。

...列や配列の配列の場合 Array#join や Array#flatten の方が Array#sum よりも高速です。

例:
["a", "b", "c"].join #=> "abc"
[[1], [[2]], [3]].flatten(1) #=> [1, [2], 3]

"+" メソッドが再定義されている場合、Array#sum は再定義を無視す...

Array#sum(init=0) {|e| expr } -> object (27076.0)

要素の合計を返します。例えば [e1, e2, e3].sum は init + e1 + e2 + e3 を返します。

...列や配列の配列の場合 Array#join や Array#flatten の方が Array#sum よりも高速です。

例:
["a", "b", "c"].join #=> "abc"
[[1], [[2]], [3]].flatten(1) #=> [1, [2], 3]

"+" メソッドが再定義されている場合、Array#sum は再定義を無視す...

Array#to_ary -> self (27076.0)

self をそのまま返します。

...self をそのまま返します。

例:

class SubArray < Array; end
ary1 = Array([1, 2, 3, 4])
ary2 = SubArray([1, 2, 3, 4])

ary1.to_ary # => [1, 2, 3, 4]
ary1.to_ary.class # => Array

ary2.to_ary # => [1, 2, 3, 4]
ary2.to_ary.class # => SubArray

@see Array#to_a...

Array#*(sep) -> String (27073.0)

指定された sep を間にはさんで連結した文字列を生成して返します。Array#join(sep) と同じ動作をします。

...す。Array#join(sep) と同じ動作をします。

@param sep 文字列を指定します。
文字列以外のオブジェクトを指定した場合は to_str メソッドによ
る暗黙の型変換を試みます。

p [1,2,3] * ","
# => "1,2,3"

@see Array#join...

絞り込み条件を変える

Array#concat(other) -> self (27061.0)

配列 other を自身の末尾に破壊的に連結します。

...自身の末尾に破壊的に連結します。

@param other 自身と連結したい配列を指定します。

array
= [1, 2]
a = [3, 4]
array
.concat a
p array # => [1, 2, 3, 4]
p a # => [3, 4] # こちらは変わらない...

Array#shift -> object | nil (27061.0)

配列の先頭の要素を取り除いてそれを返します。 引数を指定した場合はその個数だけ取り除き、それを配列で返します。

...ます。

@raise ArgumentError 引数に負の数を指定した場合に発生します。



例:

a = [0, 1, 2, 3, 4]
p a.shift #=> 0
p a #=> [1, 2, 3, 4]

p [].shift #=> nil
p [].shift(1) #=> []

@see Array#push, Array#pop, Array#unshift...

Array#delete(val) -> object | nil (27058.0)

指定された val と == で等しい要素を自身からすべて取り除きます。 等しい要素が見つかった場合は最後に見つかった要素を、 そうでない場合には nil を返します。

...クを評価してその結果を返します。

@param val 自身から削除したい値を指定します。

array
= [1, 2, 3, 2, 1]
p array.delete(2) #=> 2
p array #=> [1, 3, 1]

# ブロックなしの引数に nil を渡すとその戻り値から削除...

Array#delete(val) { ... } -> object (27058.0)

指定された val と == で等しい要素を自身からすべて取り除きます。 等しい要素が見つかった場合は最後に見つかった要素を、 そうでない場合には nil を返します。

...クを評価してその結果を返します。

@param val 自身から削除したい値を指定します。

array
= [1, 2, 3, 2, 1]
p array.delete(2) #=> 2
p array #=> [1, 3, 1]

# ブロックなしの引数に nil を渡すとその戻り値から削除...

Array#pack(template) -> String (27058.0)

配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。

...ます。
指定した場合は返値も指定した文字列オブジェクトになります。


以下にあげるものは、Array#pack、String#unpack
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることが...
...endian int32_t
l!<: little endian signed long
//}

=== 各テンプレート文字の説明

説明中、Array#pack と String#unpack で違いのあるものは `/' で区切って
Array#pack の説明 / String#unpack の説明」としています。

: a

ASCII文字列(null文字を詰...

絞り込み条件を変える

Array#pack(template, buffer: String.new) -> String (27058.0)

配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。

...ます。
指定した場合は返値も指定した文字列オブジェクトになります。


以下にあげるものは、Array#pack、String#unpack
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることが...
...endian int32_t
l!<: little endian signed long
//}

=== 各テンプレート文字の説明

説明中、Array#pack と String#unpack で違いのあるものは `/' で区切って
Array#pack の説明 / String#unpack の説明」としています。

: a

ASCII文字列(null文字を詰...

Array#prepend(*obj) -> self (27058.0)

指定された obj を引数の最後から順番に配列の先頭に挿入します。 引数を指定しなければ何もしません。

...たいオブジェクトを指定します。

arr = [1,2,3]
arr.unshift 0
p arr #=> [0, 1, 2, 3]
arr.unshift [0]
p arr #=> [[0], 0, 1, 2, 3]
arr.unshift 1, 2
p arr #=> [1, 2, [0], 0, 1, 2, 3]

@see Array#push, Array#pop, Array#shift...

Array#unshift(*obj) -> self (27058.0)

指定された obj を引数の最後から順番に配列の先頭に挿入します。 引数を指定しなければ何もしません。

...たいオブジェクトを指定します。

arr = [1,2,3]
arr.unshift 0
p arr #=> [0, 1, 2, 3]
arr.unshift [0]
p arr #=> [[0], 0, 1, 2, 3]
arr.unshift 1, 2
p arr #=> [1, 2, [0], 0, 1, 2, 3]

@see Array#push, Array#pop, Array#shift...

Array#hash -> Integer (27052.0)

自身のハッシュ値を整数で返します。ハッシュ値は自身の各要素のハッシュ値から 計算されます。Array#eql? で比較して等しい配列同士は同じハッシュ値を返します。

...自身のハッシュ値を整数で返します。ハッシュ値は自身の各要素のハッシュ値から
計算されます。Array#eql? で比較して等しい配列同士は同じハッシュ値を返します。

a = ["a", "b", 1]
a.hash #=> 321
b = a.dup
b.hash...

Array#combination(n) -> Enumerator (27043.0)

サイズ n の組み合わせをすべて生成し、それを引数としてブロックを実行します。

...],[3,4]]
a.combination(3).to_a #=> [[1,2,3],[1,2,4],[1,3,4],[2,3,4]]
a.combination(4).to_a #=> [[1,2,3,4]]
a.combination(0).to_a #=> [[]]: one combination of length 0
a.combination(5).to_a #=> [] : no combinations of length 5

@see Array#permutation, Array#repeated_combination...

絞り込み条件を変える

Array#permutation(n = self.length) -> Enumerator (27043.0)

サイズ n の順列をすべて生成し,それを引数としてブロックを実行します。

...1,2],[1,3],[2,1],[2,3],[3,1],[3,2]]
a.permutation(3).to_a #=> [[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]
a.permutation(0).to_a #=> [[]]: one permutation of length 0
a.permutation(4).to_a #=> [] : no permutations of length 4

@see Array#combination, Array#repeated_permutation...

Array#repeated_combination(n) -> Enumerator (27043.0)

サイズ n の重複組み合わせをすべて生成し、それを引数としてブロックを実行 します。

...# [1,1,3,3],[1,2,2,2],[1,2,2,3],[1,2,3,3],[1,3,3,3],
# [2,2,2,2],[2,2,2,3],[2,2,3,3],[2,3,3,3],[3,3,3,3]]
a.repeated_combination(0).to_a #=> [[]] # one combination of length 0

@see Array#repeated_permutation, Array#combination...

Array#repeated_permutation(n) -> Enumerator (27043.0)

サイズ n の重複順列をすべて生成し,それを引数としてブロックを実行します。

...[1,1],[1,2],[2,1],[2,2]]
a.repeated_permutation(3).to_a #=> [[1,1,1],[1,1,2],[1,2,1],[1,2,2],
# [2,1,1],[2,1,2],[2,2,1],[2,2,2]]
a.repeated_permutation(0).to_a #=> [[]] # one permutation of length 0

@see Array#repeated_combination, Array#permutation...

Array#<<(obj) -> self (27040.0)

指定された obj を自身の末尾に破壊的に追加します。

...を返すので、以下のように連続して
書くことができます。

ary = [1]
ary << 2 << 3 << 4
p ary #=> [1, 2, 3, 4]

@param obj 自身に加えたいオブジェクトを指定します。Array#push と違って引数は一つしか指定できません。

@see Array#push...

Array#each -> Enumerator (27040.0)

各要素に対してブロックを評価します。

...対してブロックを評価します。

ブロックが与えられなかった場合は、自身と each から生成した
Enumerator オブジェクトを返します。

[1, 2, 3].each do |i|
puts i
end
#=> 1
2
3


@see Array#each_index, Array#reverse_each...

絞り込み条件を変える

Array#each {|item| .... } -> self (27040.0)

各要素に対してブロックを評価します。

...対してブロックを評価します。

ブロックが与えられなかった場合は、自身と each から生成した
Enumerator オブジェクトを返します。

[1, 2, 3].each do |i|
puts i
end
#=> 1
2
3


@see Array#each_index, Array#reverse_each...

Array#each_index -> Enumerator (27040.0)

各要素のインデックスに対してブロックを評価します。

...クスに対してブロックを評価します。

以下と同じです。

(0 ... ary.size).each {|index| .... }

ブロックが与えられなかった場合は、自身と each_index から生成した
Enumerator オブジェクトを返します。

@see Array#each, Array#reverse_each...

Array#each_index {|index| .... } -> self (27040.0)

各要素のインデックスに対してブロックを評価します。

...クスに対してブロックを評価します。

以下と同じです。

(0 ... ary.size).each {|index| .... }

ブロックが与えられなかった場合は、自身と each_index から生成した
Enumerator オブジェクトを返します。

@see Array#each, Array#reverse_each...

Array#fetch(nth) -> object (27040.0)

nth 番目の要素を返します。

...nth 番目の要素を返します。

Array
#[] (nth) とは nth 番目の要素が存在しない場合の振舞いが異
なります。最初の形式では、例外 IndexError が発生します。
二番目の形式では、引数 ifnone を返します。
三番目の形式では、ブロッ...
...った場合に発生します。

例:

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...

Array#fetch(nth) {|nth| ... } -> object (27040.0)

nth 番目の要素を返します。

...nth 番目の要素を返します。

Array
#[] (nth) とは nth 番目の要素が存在しない場合の振舞いが異
なります。最初の形式では、例外 IndexError が発生します。
二番目の形式では、引数 ifnone を返します。
三番目の形式では、ブロッ...
...った場合に発生します。

例:

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...

絞り込み条件を変える

Array#fetch(nth, ifnone) -> object (27040.0)

nth 番目の要素を返します。

...nth 番目の要素を返します。

Array
#[] (nth) とは nth 番目の要素が存在しない場合の振舞いが異
なります。最初の形式では、例外 IndexError が発生します。
二番目の形式では、引数 ifnone を返します。
三番目の形式では、ブロッ...
...った場合に発生します。

例:

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...

Array#join(sep = $,) -> String (27040.0)

配列の要素を文字列 sep を間に挟んで連結した文字列を返します。

...になります。

ary = [1,2,3]
ary.push ary
p ary # => [1, 2, 3, [...]]
p ary.join # => ArgumentError: recursive array join

@param sep 間に挟む文字列を指定します。nil のときは空文字列を使います。
文字列以外のオブジェ...
...ジェクト
を指定した場合に発生します。

@raise ArgumentError 配列要素が自身を含むような無限にネストした配列に対
して join を呼んだ場合に発生します。

[1, 2, 3].join('-') #=> "1-2-3"

@see Array#*, $,...

Array#keep_if -> Enumerator (27040.0)

ブロックが false を返した要素を削除します。

...false を返した要素を削除します。

a = %w{ a b c d e f }
a.keep_if {|v| v =~ /[aeiou]/} # => ["a", "e"]
a # => ["a", "e"]

Array
#select! と同様に自身を上書きしますが、削除する要素がなかっ
た場合には修正を行いません。

a = %w{ a b c d...
...e f }
a.keep_if {|v| v =~ /[a-z]/ } # => ["a", "b", "c", "d", "e", "f"]
a # => ["a", "b", "c", "d", "e", "f"]

ブロックが与えられなかった場合は、自身と keep_if から生成した
Enumerator オブジェクトを返します。

@see Array#select!...

Array#keep_if {|item| ... } -> self (27040.0)

ブロックが false を返した要素を削除します。

...false を返した要素を削除します。

a = %w{ a b c d e f }
a.keep_if {|v| v =~ /[aeiou]/} # => ["a", "e"]
a # => ["a", "e"]

Array
#select! と同様に自身を上書きしますが、削除する要素がなかっ
た場合には修正を行いません。

a = %w{ a b c d...
...e f }
a.keep_if {|v| v =~ /[a-z]/ } # => ["a", "b", "c", "d", "e", "f"]
a # => ["a", "b", "c", "d", "e", "f"]

ブロックが与えられなかった場合は、自身と keep_if から生成した
Enumerator オブジェクトを返します。

@see Array#select!...

Array#shelljoin -> String (27040.0)

配列の各要素である文字列に対して、Bourne シェルのコマンドライン中で安全に 使えるためのエスケープを適用し、空白文字を介してそれらを連結したコマンド ライン文字列を生成します。

...スケープを適用し、空白文字を介してそれらを連結したコマンド
ライン文字列を生成します。

array
.shelljoin は、Shellwords.shelljoin(array) と等価です。

@return エスケープ結果を連結した文字列を返します。
@see Shellwords.#shelljoin...

絞り込み条件を変える

Array#first -> object | nil (27028.0)

配列の先頭の要素を返します。要素がなければ nil を返します。

...先頭の要素を返します。要素がなければ nil を返します。

p [0, 1, 2].first #=> 0
p [].first #=> nil

@see Array#last...

Array#last -> object | nil (27028.0)

配列の末尾の要素を返します。配列が空のときは nil を返します。

...末尾の要素を返します。配列が空のときは nil を返します。

p [0, 1, 2].last #=> 2
p [].last #=> nil

@see Array#first...

Array#sort! -> self (27028.0)

配列の内容をソートします。要素同士の比較は <=> 演算子を使って行います。sort はソートされた配列を生成して返します。 sort! は self を破壊的にソートし、self を返します。

...こうなる)
p ary2.sort{|a, b| a.to_i <=> b.to_i } #=> ["7", "8", "9", "10", "11"] (ブロックを使って数字としてソート)

# sort_by を使っても良い
p ary2.sort_by{|x| x.to_i } #=> ["7", "8", "9", "10", "11"]

@see Enumerable#sort_by
, Array#sort_by!...

Array#sort! {|a, b| ... } -> self (27028.0)

配列の内容をソートします。要素同士の比較は <=> 演算子を使って行います。sort はソートされた配列を生成して返します。 sort! は self を破壊的にソートし、self を返します。

...こうなる)
p ary2.sort{|a, b| a.to_i <=> b.to_i } #=> ["7", "8", "9", "10", "11"] (ブロックを使って数字としてソート)

# sort_by を使っても良い
p ary2.sort_by{|x| x.to_i } #=> ["7", "8", "9", "10", "11"]

@see Enumerable#sort_by
, Array#sort_by!...

Array#bsearch -> Enumerator (27022.0)

ブロックの評価結果で範囲内の各要素の判定を行い、条件を満たす値を二分探 索(計算量は O(log n))で検索します。要素が見つからない場合は nil を返し ます。self はあらかじめソートしておく必要があります。

...merator のインスタンスを返します。

@raise TypeError ブロックの評価結果が true、false、nil、数値以外であっ
た場合に発生します。

@see Array#bsearch_index, Range#bsearch, https://magazine.rubyist.net/articles/0041/0041-200Special-note.html...

絞り込み条件を変える

Array#bsearch { |x| ... } -> object | nil (27022.0)

ブロックの評価結果で範囲内の各要素の判定を行い、条件を満たす値を二分探 索(計算量は O(log n))で検索します。要素が見つからない場合は nil を返し ます。self はあらかじめソートしておく必要があります。

...merator のインスタンスを返します。

@raise TypeError ブロックの評価結果が true、false、nil、数値以外であっ
た場合に発生します。

@see Array#bsearch_index, Range#bsearch, https://magazine.rubyist.net/articles/0041/0041-200Special-note.html...

Array#find_index -> Enumerator (27022.0)

条件に一致する最初の要素の位置を返します。

...の要素の位置を返します。
一つも真にならなかった場合は nil を返します。

p [0, 1, 0, 1, 0].index {|v| v > 0} #=> 1


引数、ブロックのどちらも与えられなかった場合は、
Enumerator のインスタンスを返します。

@see Array#rindex...

Array#find_index {|item| ...} -> Integer | nil (27022.0)

条件に一致する最初の要素の位置を返します。

...の要素の位置を返します。
一つも真にならなかった場合は nil を返します。

p [0, 1, 0, 1, 0].index {|v| v > 0} #=> 1


引数、ブロックのどちらも与えられなかった場合は、
Enumerator のインスタンスを返します。

@see Array#rindex...

Array#find_index(val) -> Integer | nil (27022.0)

条件に一致する最初の要素の位置を返します。

...の要素の位置を返します。
一つも真にならなかった場合は nil を返します。

p [0, 1, 0, 1, 0].index {|v| v > 0} #=> 1


引数、ブロックのどちらも与えられなかった場合は、
Enumerator のインスタンスを返します。

@see Array#rindex...

Array#index -> Enumerator (27022.0)

条件に一致する最初の要素の位置を返します。

...の要素の位置を返します。
一つも真にならなかった場合は nil を返します。

p [0, 1, 0, 1, 0].index {|v| v > 0} #=> 1


引数、ブロックのどちらも与えられなかった場合は、
Enumerator のインスタンスを返します。

@see Array#rindex...

絞り込み条件を変える

Array#index {|item| ...} -> Integer | nil (27022.0)

条件に一致する最初の要素の位置を返します。

...の要素の位置を返します。
一つも真にならなかった場合は nil を返します。

p [0, 1, 0, 1, 0].index {|v| v > 0} #=> 1


引数、ブロックのどちらも与えられなかった場合は、
Enumerator のインスタンスを返します。

@see Array#rindex...

Array#index(val) -> Integer | nil (27022.0)

条件に一致する最初の要素の位置を返します。

...の要素の位置を返します。
一つも真にならなかった場合は nil を返します。

p [0, 1, 0, 1, 0].index {|v| v > 0} #=> 1


引数、ブロックのどちらも与えられなかった場合は、
Enumerator のインスタンスを返します。

@see Array#rindex...

Array#reverse_each -> Enumerator (27022.0)

各要素に対して逆順にブロックを評価します。

...素に対して逆順にブロックを評価します。

ブロックが与えられなかった場合は、自身と reverse_each から生成した
Enumerator オブジェクトを返します。

a = [ "a", "b", "c" ]
a.reverse_each {|x| print x, " " }
# => c b a

@see Array#each...

Array#reverse_each {|item| ... } -> self (27022.0)

各要素に対して逆順にブロックを評価します。

...素に対して逆順にブロックを評価します。

ブロックが与えられなかった場合は、自身と reverse_each から生成した
Enumerator オブジェクトを返します。

a = [ "a", "b", "c" ]
a.reverse_each {|x| print x, " " }
# => c b a

@see Array#each...

Array#rindex -> Enumerator (27022.0)

指定された val と == で等しい最後の要素の位置を返します。 等しい要素がひとつもなかった時には nil を返します。

...した
Enumerator オブジェクトを返します。

@param val オブジェクトを指定します。

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...

絞り込み条件を変える

<< 1 2 > >>