75件ヒット
[1-75件を表示]
(0.020秒)
種類
- インスタンスメソッド (42)
- 文書 (21)
- ライブラリ (12)
ライブラリ
- ビルトイン (42)
クラス
- Array (18)
モジュール
- Enumerable (24)
キーワード
-
NEWS for Ruby 2
. 4 . 0 (9) -
fiddle
/ import (12) - メソッド呼び出し(super・ブロック付き・yield) (12)
検索結果
先頭5件
-
Array
# sum(init=0) -> object (48238.0) -
要素の合計を返します。例えば [e1, e2, e3].sum は init + e1 + e2 + e3 を返します。
...[e1, e2, e3].sum は init + e1 + e2 + e3 を返します。
ブロックが与えられた場合、加算する前に各要素にブロックが適用されます。
配列が空の場合、initを返します。
//emlist[例][ruby]{
[].sum #=> 0
[].sum(0.0)......使えます。
//emlist[例][ruby]{
["a", "b", "c"].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 (48238.0) -
要素の合計を返します。例えば [e1, e2, e3].sum は init + e1 + e2 + e3 を返します。
...[e1, e2, e3].sum は init + e1 + e2 + e3 を返します。
ブロックが与えられた場合、加算する前に各要素にブロックが適用されます。
配列が空の場合、initを返します。
//emlist[例][ruby]{
[].sum #=> 0
[].sum(0.0)......使えます。
//emlist[例][ruby]{
["a", "b", "c"].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... -
Enumerable
# sum(init=0) -> object (18168.0) -
要素の合計を返します。
...の場合、initを返します。
//emlist[例][ruby]{
{ 1 => 10, 2 => 20 }.sum {|k, v| k * v } # => 50
(1..10).sum # => 55
(1..10).sum {|v| v * 2 } # => 110
('a'..'z').sum # => TypeError
//}
init 引数を明示的に指......#=> [1, 10, 2, 20]
"a\nb\nc".each_line.lazy.map(&:chomp).sum("") #=> "abc"
[[1], [[2]], [3]].sum([]) #=> [1, [2], 3]
//}
"+" メソッドが再定義されている場合、Enumerable#sum は再定義を無視することがあります(例えばInteger#+)。
@see Array#sum... -
Enumerable
# sum(init=0) {|e| expr } -> object (18168.0) -
要素の合計を返します。
...の場合、initを返します。
//emlist[例][ruby]{
{ 1 => 10, 2 => 20 }.sum {|k, v| k * v } # => 50
(1..10).sum # => 55
(1..10).sum {|v| v * 2 } # => 110
('a'..'z').sum # => TypeError
//}
init 引数を明示的に指......#=> [1, 10, 2, 20]
"a\nb\nc".each_line.lazy.map(&:chomp).sum("") #=> "abc"
[[1], [[2]], [3]].sum([]) #=> [1, [2], 3]
//}
"+" メソッドが再定義されている場合、Enumerable#sum は再定義を無視することがあります(例えばInteger#+)。
@see Array#sum... -
NEWS for Ruby 2
. 4 . 0 (180.0) -
NEWS for Ruby 2.4.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...で return を書けるようになりました 4840
=== 組み込みクラスの更新
* Array
* Array#concat 12333
複数の引数を取れるようになりました。
* Array#max, Array#min 12172
この変更は小さな非互換の原因となります:
Enumerable......なときは Array#max も再定義してください。
* Array#pack 12754
既にアロケートされているバッファを再利用するためにオプションキーワード引数 buffer: を取るようになりました。
* Array#sum 12217
Enumerable#sum と違って e......く)
* Array#sum と Enumerable#sum を追加しました。 12217
Ruby2.4以前ではArray#sumはなかったのでRuby自身には互換性の問題はありません。
しかし、多くのサードパーティ製のGem(activesupport, facets, simple_stats, etc)で
sumメソッド... -
fiddle
/ import (42.0) -
fiddle ライブラリのための高レベルインターフェースを提供するライブラリです。
...double sum(double *arry, int len);
があったとします。これを呼び出したい場合は以下のように Array#pack を使用します。
require 'fiddle/import'
module M
extend Fiddle::Importer
dlload './libsum.so'
extern 'double sum(double*, int)'
end
p M.sum([2.0, 3.0......f にコピーする関数
void first_char(char **s, char *buf, int len)
があったとします。これを呼び出すにも以下のように Array#pack を使用します。
require 'fiddle/import'
module M
extend Fiddle::Importer
dlload './libstrfirst.so'
extern 'void first_char(... -
メソッド呼び出し(super・ブロック付き・yield) (30.0)
-
メソッド呼び出し(super・ブロック付き・yield) * super * block * yield * block_arg * numbered_parameters * call_method
...た)
# Array#eachの(粗製乱造の)類似品
def iich(arr) # 引数に配列を取る
idx = 0
while idx < arr.size
yield(arr[idx]) # 引数の各要素毎に、その要素を引数にしてブロックを起動
idx += 1
end
end
sum = 0
iich([1, 4, 9, 16, 25]) {|elem|
sum += elem...