68件ヒット
[1-68件を表示]
(0.109秒)
検索結果
先頭5件
-
Range
# %(s) -> Enumerator (102.0) -
範囲内の要素を s おきに繰り返します。
...ブロックを指定しなかった時かつ数値の Range の時は Enumerator::ArithmeticSequence を返します。
@return ブロックを指定しなかったその他の Range の時は Enumerator を返します。(例: String の Range)
//emlist[例][ruby]{
("a" .. "f").step(2) {|v| p v}... -
Range
# %(s) -> Enumerator :: ArithmeticSequence (102.0) -
範囲内の要素を s おきに繰り返します。
...ブロックを指定しなかった時かつ数値の Range の時は Enumerator::ArithmeticSequence を返します。
@return ブロックを指定しなかったその他の Range の時は Enumerator を返します。(例: String の Range)
//emlist[例][ruby]{
("a" .. "f").step(2) {|v| p v}... -
Range
# bsearch -> Enumerator (102.0) -
ブロックの評価結果で範囲内の各要素の大小判定を行い、条件を満たす値を二 分探索(計算量は O(log n))で検索します。要素が見つからない場合は nil を 返します。
...ary[i] >= 6 } # => 2
(0...ary.size).bsearch {|i| ary[i] >= 8 } # => 3
(0...ary.size).bsearch {|i| ary[i] >= 100 } # => nil
(0.0...Float::INFINITY).bsearch {|x| Math.log(x) >= 0 } # => 1.0
//}
find-any モードは bsearch(3) のように動作します。ブロックは真偽値
ではなく、......テレーションで値がどのような順序で選ばれるかは
未規定です。
ブロックが与えられなかった場合は、 Enumerator のインスタンスを返します。
@raise TypeError ブロックの評価結果が true、false、nil、数値以外であっ... -
Range
# each -> Enumerator (102.0) -
範囲内の要素に対して繰り返します。
...範囲内の要素に対して繰り返します。
Range#each は各要素の succ メソッドを使用してイテレーションするようになりました。
@raise TypeError succ メソッドを持たないクラスの範囲オブジェクトに対してこのメソッドを呼んだ場......合に発生します。
//emlist[例][ruby]{
(10..15).each {|n| print n, ' ' }
# prints: 10 11 12 13 14 15
(2.5..5).each {|n| print n, ' ' }
# raises: TypeError: can't iterate from Float
//}... -
Range
# reverse _ each -> Enumerator (102.0) -
逆順に各要素に対してブロックを評価します。
...合は、各要素を逆順に辿る
Enumerator を返します。
@raise TypeError 終端を持たない範囲オブジェクトに対してこのメソッドを呼んだ場合に発生します。
//emlist[例][ruby]{
(1..3).reverse_each # => #<Enumerator: ...>
(1..3).reverse_each { |v| p v }
#......=> 3
# 2
# 1
(1..).reverse_each { |v| p v } # raises: TypeError: can't iterate from NilClass
//}... -
Range
# size -> Integer | Float :: INFINITY | nil (102.0) -
範囲内の要素数を返します。始端、終端のいずれかのオブジェクトが Numeric のサブクラスのオブジェクトではない場合には nil を返します。
...を返します。始端、終端のいずれかのオブジェクトが
Numeric のサブクラスのオブジェクトではない場合には nil を返します。
//emlist[例][ruby]{
(10..20).size # => 11
("a".."z").size # => nil
(-Float::INFINITY..Float::INFINITY).size # => Infinity
//}... -
Range
# step(s = 1) -> Enumerator (102.0) -
範囲内の要素を s おきに繰り返します。
...@param s 正の整数を指定します。
@return ブロックつきの時は self を返します。
@return ブロックなしの時は Enumerator を返します。
@raise ArgumentError s に 0 または負の数を指定した場合に発生します
//emlist[例][ruby]{
("a" .. "f").step(2)......ブロックを指定しなかった時かつ数値の Range の時は Enumerator::ArithmeticSequence を返します。
@return ブロックを指定しなかったその他の Range の時は Enumerator を返します。(例: String の Range)
//emlist[例][ruby]{
("a" .. "f").step(2) {|v| p v}... -
Range
# step(s = 1) -> Enumerator :: ArithmeticSequence (102.0) -
範囲内の要素を s おきに繰り返します。
...ブロックを指定しなかった時かつ数値の Range の時は Enumerator::ArithmeticSequence を返します。
@return ブロックを指定しなかったその他の Range の時は Enumerator を返します。(例: String の Range)
//emlist[例][ruby]{
("a" .. "f").step(2) {|v| p v}... -
Range
# ===(obj) -> bool (20.0) -
始端と終端の中に obj があるとき、true を返します。 そうでないとき、false を返します。
...始端と終端の中に obj があるとき、true を返します。
そうでないとき、false を返します。
Range#=== は主に case 式での比較に用いられます。
//emlist[例][ruby]{
p (0...50) === 79 #=> false
p (60...80) === 79 #=> true
case 79
when 0...60 then puts......て) Range#cover? と同様の処理をするように切り替わりました。
ただし、=== は、Range#cover? のように Range オブジェクトを引数にはとる設計はありません。
//emlist[例][ruby]{
require 'date'
p (Date.today - 100...Date.today + 100).include?(DateTime.n......e
p (Date.today - 100...Date.today + 100).cover?(DateTime.now) #=> true
p (Date.today - 100...Date.today + 100) === DateTime.now #=> true
# 2.5 以前は、=== は、include? と同じく比較できず false を返していました。
//}
2.7 以降の === は、文字列も Range#cover...