るりまサーチ

最速Rubyリファレンスマニュアル検索!
182件ヒット [101-182件を表示] (0.007秒)
トップページ > クラス:Range[x]

ライブラリ

キーワード

検索結果

<< < 1 2 >>

Range#last(n) -> [object] (1.0)

最後の n 要素を返します。範囲内に要素が含まれない場合は空の配列を返します。

...

[注意] 引数を省略して実行した場合は、終端を含むかどうか
(Range#exclude_end? の戻り値)に関わらず終端の要素を返す事に注意し
てください。

例:

(10..20).last(3) # => [18, 19, 20]
(10...20).last(3) # => [17, 18, 19]

@see Range#first...

Range#max -> object | nil (1.0)

範囲内の最大の値を返します。

範囲内の最大の値を返します。

例:

(1..5).max # => 5

始端が終端より大きい場合、終端を含まない範囲オブジェクトの始端が終端と
等しい場合は nil を返します。

例:

(2..1).max # => nil
(1...1).max # => nil

Range#max {|a, b| ... } -> object | nil (1.0)

ブロックの評価結果で範囲内の各要素の大小判定を行い、最大の要素を返しま す。範囲内に要素が存在しなければ nil を返します。

...a < b のとき負の整数
を、期待しています。

@raise TypeError ブロックが整数以外を返したときに発生します。

@see Range#last, Range#min, Enumerable#max

例:
h = { 1 => "C", 2 => "Go", 3 => "Ruby" }
(1..3).max { |a, b| h[a].length <=> h[b].length } # => 3...

Range#member?(obj) -> bool (1.0)

obj が範囲内に含まれている時に真を返します。

...obj が範囲内に含まれている時に真を返します。

Range
#=== は主に case 式での比較に用いられます。

<=> メソッドによる演算により範囲内かどうかを判定するには Range#cover? を使用してください。

@param obj 比較対象のオブジェ...
...クトを指定します。

例:

p (0.1 .. 0.2).member?(0.15) # => true

# 文字列の場合、include? は辞書順の比較になる
p ("a" .. "c").include?("ba") # => false
p ("a" .. "c").member?("ba") # => false

@see d:spec/control#case
@see Range#cover?...

Range#min -> object | nil (1.0)

範囲内の最小の値を返します。

範囲内の最小の値を返します。

例:

(1..5).min # => 1

始端が終端より大きい場合、終端を含まない範囲オブジェクトの始端が終端と
等しい場合は nil を返します。

例:

(2..1).min # => nil
(1...1).min # => nil

絞り込み条件を変える

Range#min {|a, b| ... } -> object | nil (1.0)

ブロックの評価結果で範囲内の各要素の大小判定を行い、最小の要素を返しま す。範囲内に要素が存在しなければ nil を返します。

...a < b のとき負の整数
を、期待しています。

@raise TypeError ブロックが整数以外を返したときに発生します。

@see Range#first, Range#max, Enumerable#min

例:
h = { 1 => "C", 2 => "Go", 3 => "Ruby" }
(1..3).min { |a, b| h[a].length <=> h[b].length } # => 1...

Range#size -> Integer | Float::INFINITY | nil (1.0)

範囲内の要素数を返します。始端、終端のいずれかのオブジェクトが Numeric のサブクラスのオブジェクトではない場合には nil を返します。

範囲内の要素数を返します。始端、終端のいずれかのオブジェクトが
Numeric のサブクラスのオブジェクトではない場合には nil を返します。

例:

(10..20).size # => 11
("a".."z").size # => nil
(-Float::INFINITY..Float::INFINITY).size # => Infinity

Range#step(s = 1) -> Enumerator (1.0)

範囲内の要素を s おきに繰り返します。

範囲内の要素を s おきに繰り返します。

@param s 正の整数を指定します。

@raise ArgumentError s に 0 または負の数を指定した場合に発生します

例:

("a" .. "f").step(2) {|v| p v}
# => "a"
"c"
"e"

Range#step(s = 1) {|item| ... } -> self (1.0)

範囲内の要素を s おきに繰り返します。

範囲内の要素を s おきに繰り返します。

@param s 正の整数を指定します。

@raise ArgumentError s に 0 または負の数を指定した場合に発生します

例:

("a" .. "f").step(2) {|v| p v}
# => "a"
"c"
"e"

Range#taguri -> String (1.0)

自身のタグ URI を返します。

自身のタグ URI を返します。

絞り込み条件を変える

Range#taguri=(val) (1.0)

自身のタグ URI を val に設定します。

自身のタグ URI を val に設定します。

@param val タグ URI を文字列で指定します。

Range#to_json(*args) -> String (1.0)

自身を JSON 形式の文字列に変換して返します。

自身を JSON 形式の文字列に変換して返します。

内部的にはハッシュにデータをセットしてから JSON::Generator::GeneratorMethods::Hash#to_json を呼び出しています。

@param args 引数はそのまま JSON::Generator::GeneratorMethods::Hash#to_json に渡されます。

@see JSON::Generator::GeneratorMethods::Hash#to_json

Range#to_s -> String (1.0)

self を文字列に変換します(始点と終点のオブジェクトは #to_s メソッドで文 字列に変換されます)。

...self を文字列に変換します(始点と終点のオブジェクトは #to_s メソッドで文
字列に変換されます)。

@see Range#inspect

例:
(1..5).to_s # => "1..5"
("1".."5").to_s # => "1..5"...

Range#to_yaml(opts = {}) -> String (1.0)

自身を YAML ドキュメントに変換します。

...す。

@param opts YAML ドキュメント出力の際のオプションを指定します。
オプションの詳細は Syck::Emitter#reset を参照し
てください。

require 'yaml'
print (1..10).to_yaml
# => --- !ruby/range
begin: 1
end: 10
excl: false...

Range.json_create(hash) -> Range (1.0)

JSON のオブジェクトから Ruby のオブジェクトを生成して返します。

JSON のオブジェクトから Ruby のオブジェクトを生成して返します。

@param hash 適切なキーを持つハッシュを指定します。

絞り込み条件を変える

Range.new(first, last, exclude_end = false) -> Range (1.0)

first から last までの範囲オブジェクトを生成して返しま す。

...発生します

例: 整数の範囲オブジェクトの場合

Range
.new(1, 10) # => 1..10
Range
.new(1, 10, true) # => 1...10

例: 日付オブジェクトの範囲オブジェクトの場合

require 'date'
Range
.new(Date.today, Date.today >> 1).each {|d| puts d }
# => 2017-09...
...-16
2017-09-17
...
2017-10-16

例: IPアドレスの範囲オブジェクトの場合

require 'ipaddr'
Range
.new(IPAddr.new("192.0.2.1"), IPAddr.new("192.0.2.3")).each {|ip| puts ip}
# => 192.0.2.1
192.0.2.2
192.0.2.3

例: 自作のオブジェクトの...
...場合

MyInteger = Struct.new(:value) do
def succ
self.class.new(value + 1)
end

def <=>(other)
value <=> other.value
end

def to_s
value.to_s
end
end
Range
.new(MyInteger.new(1), MyInteger.new(3)).each {|i| puts i }
# => 1
2
3...

Range.yaml_new(klass, tag, val) (1.0)

ライブラリ内部で使用します。

ライブラリ内部で使用します。

Range.yaml_tag_subclasses? -> true (1.0)

常に true を返します。

常に true を返します。

ライブラリ内部で使用します。
<< < 1 2 >>