24件ヒット
[1-24件を表示]
(0.007秒)
別のキーワード
検索結果
-
String
# sum(bits = 16) -> Integer (18167.0) -
文字列の bits ビットのチェックサムを計算します。
...]{
def sum(bits)
sum = 0
each_byte {|c| sum += c }
return 0 if sum == 0
sum & ((1 << bits) - 1)
end
//}
例えば以下のコードで UNIX System V の
sum(1) コマンドと同じ値が得られます。
//emlist[例][ruby]{
sum = 0
ARGF.each_line do |line|
sum += line.sum
end
sum %= 6... -
メソッド呼び出し(super・ブロック付き・yield) (24.0)
-
メソッド呼び出し(super・ブロック付き・yield) * super * block * yield * block_arg * numbered_parameters * it * call_method
...rint "hello world\n"
print
Class.new
Class::new
//}
文法:
[式 `.'] 識別子 [`(' [[`*'] 式] ... [`&' 式] `)']
[式 `::'] 識別子 [`(' [[`*'] 式] ... [`&' 式] `)']
メソッド呼び出し式はレシーバ(`.' の左側の式の値)のメソッドを呼び
出しま......)
//}
は、それぞれ
//emlist[][ruby]{
foo(1,2,3,4)
foo(1)
foo(1,2,3,4,5)
foo(1,2,3,4,5,6)
//}
と同じです。
最後の引数の直前に & がついている場合、その引数で指定した手続き
オブジェクト(Proc)やメソッドオブジェクト(Method)がブロック
と......yield(arr[idx]) # 引数の各要素毎に、その要素を引数にしてブロックを起動
idx += 1
end
end
sum = 0
iich([1, 4, 9, 16, 25]) {|elem|
sum += elem
}
p sum # => 55
//}
ブロックパラメータの代入はd:spec/operator#multiassignと同じルールで行われます...