種類
- インスタンスメソッド (542)
- 特異メソッド (26)
ライブラリ
- ビルトイン (529)
-
json
/ add / range (39)
キーワード
- % (26)
- == (13)
- === (13)
-
as
_ json (13) - begin (13)
- bsearch (26)
- cover? (26)
- each (26)
- end (13)
- entries (13)
- eql? (13)
-
exclude
_ end? (13) - first (26)
- hash (13)
- include? (13)
- inspect (13)
-
json
_ create (13) - last (26)
- max (52)
- member? (13)
- min (52)
- minmax (26)
- new (13)
- overlap? (3)
-
reverse
_ each (6) - size (13)
- step (39)
-
to
_ a (13) -
to
_ json (13) -
to
_ s (13)
検索結果
先頭5件
-
Range
# %(s) -> Enumerator (1.0) -
範囲内の要素を s おきに繰り返す [c:Enumerator] を返します。 ブロックを指定しない [m:Range#step] と同じです。
...い [m:Range#step] と同じです。
- **param** `s` -- [m:Range#step] の s と同じです。
- **return** -- 数値の Range の時は [c:Enumerator::ArithmeticSequence] を返します。
- **return** -- その他の Range の時は [c:Enumerator] を返します。(例: String の Range)
```......ruby title="例"
p ((1..10) % 3).to_a # => [1, 4, 7, 10]
p (("a".."f") % 2).to_a # => ["a", "c", "e"]
```
- **SEE** [m:Range#step]... -
Range
# %(s) -> Enumerator :: ArithmeticSequence (1.0) -
範囲内の要素を s おきに繰り返す [c:Enumerator] を返します。 ブロックを指定しない [m:Range#step] と同じです。
...い [m:Range#step] と同じです。
- **param** `s` -- [m:Range#step] の s と同じです。
- **return** -- 数値の Range の時は [c:Enumerator::ArithmeticSequence] を返します。
- **return** -- その他の Range の時は [c:Enumerator] を返します。(例: String の Range)
```......ruby title="例"
p ((1..10) % 3).to_a # => [1, 4, 7, 10]
p (("a".."f") % 2).to_a # => ["a", "c", "e"]
```
- **SEE** [m:Range#step]... -
Range
# ==(other) -> bool (1.0) -
指定された other が Range クラスのインスタンスであり、始端と終端が == メソッドで比較して等しく、[m:Range#exclude_end?] が同じ場合に true を返します。そうでない場合に false を返します。
...指定された other が Range クラスのインスタンスであり、始端と終端が == メソッドで比較して等しく、[m:Range#exclude_end?] が同じ場合に
true を返します。そうでない場合に false を返します。
- **param** `other` -- 自身と比較したい......オブジェクトを指定します。
```ruby title="例"
p (1..2) == (1..2) # => true
p (1..2) == (1...2) # => false
p (1..2) == Range.new(1.0, 2.0) # => true
```... -
Range
# ===(obj) -> bool (1.0) -
始端と終端の中に obj があるとき、true を返します。 そうでないとき、false を返します。
...始端と終端の中に obj があるとき、true を返します。
そうでないとき、false を返します。
[m:Range#===] は主に case 式での比較に用いられます。
```ruby title="例"
p (0...50) === 79 # => false
p (60...80) === 79 # => true
case 79
when 0...60 then......、単純に [m:Range#include?] メソッドを内部で呼んでいました。
しかし、Ruby 2.6 以降では、(文字列を除いて) [m:Range#cover?] と同様の処理をするように切り替わりました。
ただし、=== は、[m:Range#cover?] のように Range オブジェクト......2.5 までは、=== は、include? と同じく比較できず false を返していました。
```
Ruby 2.7 以降の === は、文字列も [m:Range#cover?] と同様の処理をするようになりました。
```ruby title="例"
p ('a'..'z').include? 'at' # => false
p ('a'..'z').cover? 'at... -
Range
# as _ json(*args) -> Hash (1.0) -
{: since="1.9.3"}
...since="1.9.3"}
`self` を JSON 形式の文字列に変換する際に使う、中間表現となるハッシュに変換して返します。
[m:Range#to_json] が内部で使用しています。
ハッシュには、[m:JSON.create_id] をキーとしてクラス名が、`'a'` に
始端・終......列(`[first, last, exclude_end?]`)が入ります。
- **param** `args` -- 無視されます。
```ruby title="例"
require 'json/add/range'
hash = (1..5).as_json
p hash['json_class'] # => "Range"
p hash['a'] # => [1, 5, false]
```
- **SEE** [m:Range#to_json], [m:Range.json_create]... -
Range
# begin -> object (1.0) -
始端の要素を返します。 始端を持たない範囲オブジェクトの場合、nil を返します。
...の要素を返します。
始端を持たない範囲オブジェクトの場合、nil を返します。
```ruby title="例"
# 始端を持つ場合
p (1..5).begin # => 1
p (1..0).begin # => 1
# 始端を持たない場合
p (..5).begin # => nil
```
- **SEE** [m:Range#end], [m:Range#first]... -
Range
# bsearch -> Enumerator (1.0) -
ブロックの評価結果で範囲内の各要素の大小判定を行い、条件を満たす値を二分探索(計算量は O(log n))で検索します。要素が見つからない場合は nil を返します。
ブロックの評価結果で範囲内の各要素の大小判定を行い、条件を満たす値を二分探索(計算量は O(log n))で検索します。要素が見つからない場合は nil を返します。
本メソッドはブロックを評価した結果により以下のいずれかのモードで動作します。
- find-minimum モード
- find-any モード
find-minimum モード(特に理由がない限りはこのモードを使う方がいいでしょう)では、条件判定の結果を以下のようにする必要があります。
- 求める値がブロックパラメータの値か前の要素の場合: true を返す
- 求める値がブロックパラメータより後の要素の場合: fa... -
Range
# bsearch {|obj| . . . } -> object | nil (1.0) -
ブロックの評価結果で範囲内の各要素の大小判定を行い、条件を満たす値を二分探索(計算量は O(log n))で検索します。要素が見つからない場合は nil を返します。
ブロックの評価結果で範囲内の各要素の大小判定を行い、条件を満たす値を二分探索(計算量は O(log n))で検索します。要素が見つからない場合は nil を返します。
本メソッドはブロックを評価した結果により以下のいずれかのモードで動作します。
- find-minimum モード
- find-any モード
find-minimum モード(特に理由がない限りはこのモードを使う方がいいでしょう)では、条件判定の結果を以下のようにする必要があります。
- 求める値がブロックパラメータの値か前の要素の場合: true を返す
- 求める値がブロックパラメータより後の要素の場合: fa...
