るりまサーチ

最速Rubyリファレンスマニュアル検索!
387件ヒット [1-100件を表示] (0.102秒)
トップページ > クエリ:I[x] > クエリ:b[x] > クエリ:sort[x]

別のキーワード

  1. _builtin to_i
  2. fiddle to_i
  3. matrix elements_to_i
  4. csv to_i
  5. matrix i

検索結果

<< 1 2 3 ... > >>

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

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

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

ブロックとともに呼び出された時には、要素...
...けません。両者を比較できない時は nil を返します。

//emlist[例][ruby]{
ary1 = [ "d", "a", "e", "c", "b" ]
p ary1.sort #=> ["a", "b", "c", "d", "e"]

ary2 = ["9", "7", "10", "11", "8"]
p ary2.sort #=> ["10", "11", "7", "8"...
...るとこうなる)
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 -> Array (18222.0)

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

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

ブロックとともに呼び出された時には、要素...
...けません。両者を比較できない時は nil を返します。

//emlist[例][ruby]{
ary1 = [ "d", "a", "e", "c", "b" ]
p ary1.sort #=> ["a", "b", "c", "d", "e"]

ary2 = ["9", "7", "10", "11", "8"]
p ary2.sort #=> ["10", "11", "7", "8"...
...るとこうなる)
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!...

Enumerable#sort_by {|item| ... } -> [object] (12482.0)

ブロックの評価結果を <=> メソッドで比較することで、self を昇 順にソートします。ソートされた配列を新たに生成して返します。

...emlist[例][ruby]{
class Array
def sort_by
self.map {|i| [yield(i), i] }.
sort
{|a, b| a[0] <=> b[0] }.
map {|i| i[1]}
end
end
//}

Enumerable#sort と比較して sort_by が優れている点として、
比較条件が複雑な場合の速度が挙げられます。
sort
_by...
...れます。
従って downcase の実行速度が遅ければ sort の速度が致命的に低下します。

//emlist[][ruby]{
p ["BAR", "FOO", "bar", "foo"].sort {|a, b| a.downcase <=> b.downcase }
//}

一方、次のように sort_by を使うと downcase の実行回数は要素数と同じ...
...emlist[][ruby]{
p ["BAR", "FOO", "bar", "foo"].sort_by {|v| v.downcase }
//}

以下の、実行回数の検証結果を参照してみてください。

//emlist[][ruby]{
class Integer
def count
$n += 1
self
end
end

ary = []
1.upto(1000) {|v| ary << rand(v) }

$n = 0
ary.sort {|a,b| a...

Enumerable#sort_by -> Enumerator (12382.0)

ブロックの評価結果を <=> メソッドで比較することで、self を昇 順にソートします。ソートされた配列を新たに生成して返します。

...emlist[例][ruby]{
class Array
def sort_by
self.map {|i| [yield(i), i] }.
sort
{|a, b| a[0] <=> b[0] }.
map {|i| i[1]}
end
end
//}

Enumerable#sort と比較して sort_by が優れている点として、
比較条件が複雑な場合の速度が挙げられます。
sort
_by...
...れます。
従って downcase の実行速度が遅ければ sort の速度が致命的に低下します。

//emlist[][ruby]{
p ["BAR", "FOO", "bar", "foo"].sort {|a, b| a.downcase <=> b.downcase }
//}

一方、次のように sort_by を使うと downcase の実行回数は要素数と同じ...
...emlist[][ruby]{
p ["BAR", "FOO", "bar", "foo"].sort_by {|v| v.downcase }
//}

以下の、実行回数の検証結果を参照してみてください。

//emlist[][ruby]{
class Integer
def count
$n += 1
self
end
end

ary = []
1.upto(1000) {|v| ary << rand(v) }

$n = 0
ary.sort {|a,b| a...

Array#sort_by! {|item| ... } -> self (12330.0)

sort_by の破壊的バージョンです。

...sort_by の破壊的バージョンです。

ブロックを省略した場合は Enumerator を返します。

//emlist[例][ruby]{
fruits = %w{apple pear fig}
fruits.sort_by! { |word| word.length }
fruits # => ["fig", "pear", "apple"]
//}

@see Enumerable#sort_by...

絞り込み条件を変える

Enumerable#minmax_by -> Enumerator (12224.0)

Enumerable オブジェクトの各要素をブロックに渡して評価し、その結果を <=> で比較して 最小の要素と最大の要素を要素とするサイズ 2 の配列を返します。

...Enumerable オブジェクトの各要素をブロックに渡して評価し、その結果を <=> で比較して
最小の要素と最大の要素を要素とするサイズ 2 の配列を返します。

該当する要素が複数存在する場合、どの要素を返すかは不定です。...
...numerable#minmax と Enumerable#minmax_by の
違いは sort sort_by の違いと同じです。
詳細は Enumerable#sort_by を参照してください。

//emlist[例][ruby]{
a = %w(albatross dog horse)
a.minmax_by {|x| x.length } #=> ["dog", "albatross"]

[].minmax_by{} # => [nil, nil]
//...
...}

ブロックを省略した場合は Enumerator を返します。

@see Enumerable#sort_by...

Enumerable#minmax_by {|obj| ... } -> [object, object] (12224.0)

Enumerable オブジェクトの各要素をブロックに渡して評価し、その結果を <=> で比較して 最小の要素と最大の要素を要素とするサイズ 2 の配列を返します。

...Enumerable オブジェクトの各要素をブロックに渡して評価し、その結果を <=> で比較して
最小の要素と最大の要素を要素とするサイズ 2 の配列を返します。

該当する要素が複数存在する場合、どの要素を返すかは不定です。...
...numerable#minmax と Enumerable#minmax_by の
違いは sort sort_by の違いと同じです。
詳細は Enumerable#sort_by を参照してください。

//emlist[例][ruby]{
a = %w(albatross dog horse)
a.minmax_by {|x| x.length } #=> ["dog", "albatross"]

[].minmax_by{} # => [nil, nil]
//...
...}

ブロックを省略した場合は Enumerator を返します。

@see Enumerable#sort_by...

Enumerable#min_by -> Enumerator (12218.0)

各要素を順番にブロックに渡して評価し、 その評価結果を <=> で比較して、 最小であった値に対応する元の要素、もしくは最小の n 要素が昇順で入った配列を返します。

...れば nil を返します。
引数を指定する形式では、空の配列を返します。

該当する要素が複数存在する場合、どの要素を返すかは不定です。

ブロックを省略した場合は Enumerator を返します。

Enumerable#min と Enumerable#min_by の...
...は Enumerable#sort と Enumerable#sort_by の違いと同じです。

@param n 取得する要素数。

//emlist[例][ruby]{
a = %w(albatross dog horse)
a.min_by # => #<Enumerator: ["albatross", "dog", "horse"]:min_by>
a.min_by { |x| x.length } # => "dog"
a.min_by(2)...
...# => #<Enumerator: ["albatross", "dog", "horse"]:min_by(2)>
a.min_by(2) {|x| x.length } # => ["dog", "horse"]
//}

@see Enumerable#sort_by...

Enumerable#min_by {|item| ... } -> object | nil (12218.0)

各要素を順番にブロックに渡して評価し、 その評価結果を <=> で比較して、 最小であった値に対応する元の要素、もしくは最小の n 要素が昇順で入った配列を返します。

...れば nil を返します。
引数を指定する形式では、空の配列を返します。

該当する要素が複数存在する場合、どの要素を返すかは不定です。

ブロックを省略した場合は Enumerator を返します。

Enumerable#min と Enumerable#min_by の...
...は Enumerable#sort と Enumerable#sort_by の違いと同じです。

@param n 取得する要素数。

//emlist[例][ruby]{
a = %w(albatross dog horse)
a.min_by # => #<Enumerator: ["albatross", "dog", "horse"]:min_by>
a.min_by { |x| x.length } # => "dog"
a.min_by(2)...
...# => #<Enumerator: ["albatross", "dog", "horse"]:min_by(2)>
a.min_by(2) {|x| x.length } # => ["dog", "horse"]
//}

@see Enumerable#sort_by...

Enumerable#min_by(n) -> Enumerator (12218.0)

各要素を順番にブロックに渡して評価し、 その評価結果を <=> で比較して、 最小であった値に対応する元の要素、もしくは最小の n 要素が昇順で入った配列を返します。

...れば nil を返します。
引数を指定する形式では、空の配列を返します。

該当する要素が複数存在する場合、どの要素を返すかは不定です。

ブロックを省略した場合は Enumerator を返します。

Enumerable#min と Enumerable#min_by の...
...は Enumerable#sort と Enumerable#sort_by の違いと同じです。

@param n 取得する要素数。

//emlist[例][ruby]{
a = %w(albatross dog horse)
a.min_by # => #<Enumerator: ["albatross", "dog", "horse"]:min_by>
a.min_by { |x| x.length } # => "dog"
a.min_by(2)...
...# => #<Enumerator: ["albatross", "dog", "horse"]:min_by(2)>
a.min_by(2) {|x| x.length } # => ["dog", "horse"]
//}

@see Enumerable#sort_by...

絞り込み条件を変える

<< 1 2 3 ... > >>