るりまサーチ

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

別のキーワード

  1. _builtin >
  2. bigdecimal >
  3. module >
  4. float >
  5. integer >

ライブラリ

キーワード

検索結果

<< 1 2 > >>

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

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

...返します。
Array
#dup 同様 要素を複製しない浅い複製です。

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

//emlist[例][ruby]{
p Array.new([1,2,3]) # => [1,2,3]

a = ["a", "b", "c"]
b = Array.new(a)
a.each{|s| s.capitalize! }
p a #=> ["A", "B", "C"...
...]
p b #=> ["A", "B", "C"] (b は a と要素を共有する)
//}...

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

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

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

//emlist[例][ruby]{
ary = Array.new(3){ "foo" }
p ary #=> ["foo", "foo", "foo"]
ary[0].capitalize!
p ary #=> ["Foo", "foo", "foo"]...

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

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

...定します。

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

//emlist[例][ruby]{
ary = Array.new(3, "foo")
p ary #=> ["foo", "foo", "foo"]
ary[0].capitalize!
p ary #=> ["Foo", "Foo", "Foo"] (各要素は同一のオブジェクトである)
//}...

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

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

...pacity)が足りなければ、packはメモリを確保します。

//emlist[例][ruby]{
['!'].pack('@1a', buffer: 'abc') # => "a!"
['!'].pack('@5a', buffer: 'abc') # => "abc\u0000\u0000!"
//}

@param template 自身のバイナリとしてパックするためのテンプレートを文字列...
...ます。
指定した場合は返値も指定した文字列オブジェクトになります。


以下にあげるものは、Array#pack、String#unpack、String#unpack1
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
...
...ます。

強制的にエンディアンを指定したいときは、
リトルエンディアンなら < を、
ビッグエンディアンなら >
を後ろにつけます。! と組み合わせることも可能です。

まとめると以下のようになります。

: エンディアン非...

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

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

...pacity)が足りなければ、packはメモリを確保します。

//emlist[例][ruby]{
['!'].pack('@1a', buffer: 'abc') # => "a!"
['!'].pack('@5a', buffer: 'abc') # => "abc\u0000\u0000!"
//}

@param template 自身のバイナリとしてパックするためのテンプレートを文字列...
...ます。
指定した場合は返値も指定した文字列オブジェクトになります。


以下にあげるものは、Array#pack、String#unpack、String#unpack1
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
...
...ます。

強制的にエンディアンを指定したいときは、
リトルエンディアンなら < を、
ビッグエンディアンなら >
を後ろにつけます。! と組み合わせることも可能です。

まとめると以下のようになります。

: エンディアン非...

絞り込み条件を変える

Array#to_csv(**options) -> String (113.0)

CSV.generate_line(self, options) と同様です。

...ions) と同様です。

Array
オブジェクトを 1 行の CSV 文字列に変換するためのショートカットです。

@param options CSV.generate_line と同様のオプションを指定します。

//emlist[][ruby]{
require 'csv'

p [1, 'Matz', :Ruby, Date.new(1965, 4, 14)].to_csv...
...# => "1,Matz,Ruby,1965-04-14\n"
p [1, 'Matz', :Ruby, Date.new(1965, 4, 14)].to_csv(col_sep: ' ', row_sep: "\r\n") # => "1 Matz Ruby 1965-04-14\r\n"
//}


@see CSV.generate_line...
...# => "1,Matz,Ruby,1965-04-14\n"
p [1, 'Matz', :Ruby, Date.new(1965, 4, 14)].to_csv(col_sep: ' ', row_sep: "\r\n") # => "1 Matz Ruby 1965-04-14\r\n"
//}

Ruby 3.0 (CSV 3.1.9) から、次のオプションが使えるようになりました。

//emlist[][ruby]{
requi...
...re 'csv'

puts [1, nil].to_csv # => 1,
puts [1, nil].to_csv(write_nil_value: "N/A") # => 1,N/A
puts [2, ""].to_csv # => 2,""
puts [2, ""].to_csv(write_empty_value: "BLANK") # => 2,BLANK
//}

@see CSV.generate_line...

Array#shuffle -> Array (107.0)

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

...ことができます。

//emlist[例][ruby]{
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 (107.0)

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

...ことができます。

//emlist[例][ruby]{
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#sum(init=0) -> object (107.0)

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

...uby]{
[].sum #=> 0
[].sum(0.0) #=> 0.0
[1, 2, 3].sum #=> 6
[3, 5.5].sum #=> 8.5
[2.5, 3.0].sum(0.0) {|e| e * e } #=> 15.25
[Object.new].sum #=> TypeError
//}

配列の平均値は以下...
....sum("") #=> "abc"
[[1], [[2]], [3]].sum([]) #=> [1, [2], 3]
//}

しかし、文字列の配列や配列の配列の場合 Array#join や Array#flatten の方が Array#sum よりも高速です。

//emlist[例][ruby]{
["a", "b", "c"].join #=> "abc"
[[1], [[2]], [3...
...]].flatten(1) #=> [1, [2], 3]
//}

"+" メソッドが再定義されている場合、Array#sum は再定義を無視することがあります(例えば Integer#+)。

@see Enumerable#sum...

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

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

...uby]{
[].sum #=> 0
[].sum(0.0) #=> 0.0
[1, 2, 3].sum #=> 6
[3, 5.5].sum #=> 8.5
[2.5, 3.0].sum(0.0) {|e| e * e } #=> 15.25
[Object.new].sum #=> TypeError
//}

配列の平均値は以下...
....sum("") #=> "abc"
[[1], [[2]], [3]].sum([]) #=> [1, [2], 3]
//}

しかし、文字列の配列や配列の配列の場合 Array#join や Array#flatten の方が Array#sum よりも高速です。

//emlist[例][ruby]{
["a", "b", "c"].join #=> "abc"
[[1], [[2]], [3...
...]].flatten(1) #=> [1, [2], 3]
//}

"+" メソッドが再定義されている場合、Array#sum は再定義を無視することがあります(例えば Integer#+)。

@see Enumerable#sum...

絞り込み条件を変える

<< 1 2 > >>