[前][次][番号順一覧][スレッド一覧]

ruby-reference-manual:898

From: Hideo Konami <dkbbd405@k...>
Date: Mon, 09 Jun 2008 10:02:41 +0900
Subject: [ruby-reference-manual:898] Array クラスメソッド日本語(初稿)

以下に貼付けます。この後は Hash の予定です。
実行例を少し変更したものがあります。また,乱数を使うものについては
srand()が有効という記述を追加しました。

-----
try_convert(obj) -> array or nil

    to_ary メソッドを用いて obj を配列に変換しようとします。何らかの理由
で変換できないときには nil を返します。このメソッドは引数が配列であるか
どうかを調べるために使えます。

    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

---------
choice -> object

    配列の要素を1個ランダムに選んで返します。srand()が有効です。


--------
combination(n) { |c| block } -> Array
combination(n) -> Enumerable::Enumerator

    長さ n の組み合わせをすべて生成し,それを引数としてブロックを実行し
ます。得られる組み合わせの順序は保証されません。ブロックなしで呼び出され
ると, 組み合わせを生成する Enumerator オブジェクトを返します。

    Examples:

     a = [1, 2, 3, 4]

    ar.combination(2){|x| p x}
     #=> [1, 2]
         [1, 3]
         [1, 4]
         [2, 3]
         [2, 4]
         [3, 4]

     a.combination(2).to_a  #=> [[1,2],[1,3],[1,4],[2,3],[2,4],[3,4]]


--------
cycle {|obj| block }

    Enumerable オブジェクトの要素を,繰り返し無限に生成し続けます。

    a = ["a", "b", "c"]
    a.cycle {|x| puts x }  # print, a, b, c, a, b, c,.. forever.


--------
permutation(n) { |p| block } -> Array
permutation(n) -> Enumerable::Enumerator

    長さ n の順列をすべて生成し,それを引数としてブロックを実行します。
得られる順列の順序は保証されません。ブロックなしで呼び出されると, 順列
を生成する Enumerator オブジェクトを返します。

    Examples:

    a = [1, 2, 3]          # 長さ3の配列の例
    a.permutation(1).to_a  #=> [[1],[2],[3]]
    a.permutation(2).to_a  #=> [[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  #=> [[]]: 長さ 0 の順列は1個だけあります。
    a.permutation(4).to_a  #=> []  : 長さ 4 の順列は存在しません。


--------
product(other_ary, ...) -> Array

    レシーバの配列と引数で与えられた配列(複数可)のすべての要素の組み合
わせを返します。返される配列の長さは,これらの配列の長さの積になります。

    [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,4],[5,6]) # => [[1,3,5],[1,3,6],[1,4,5],[1,4,6],
                               #     [2,3,5],[2,3,6],[2,4,5],[2,4,6]]
    [1,2].product()            # => [[1],[2]]
    [1,2].product([])          # => []



--------
shuffle -> Array

    配列の要素をシャッフルして,その結果を配列として返します。srand()が
有効です。

    a = [ 1, 2, 3 ]           #=> [1, 2, 3]
    a.shuffle                 #=> [2, 3, 1]



--------
shuffle! -> Array | nil

    配列を破壊的にシャッフルします。配列自身または nil を返します。

--------




--
ML: ruby-reference-manual@m...
使い方: http://QuickML.com/

[前][次][番号順一覧][スレッド一覧]