Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Integerクラス
クラスの継承リスト: Integer
< Numeric
< Comparable
< Object
< Kernel
< BasicObject
dynamic include:
JSON::Generator::GeneratorMethods::Integer (by json)
整数の抽象クラスです。サブクラスとして Fixnum と Bignum が あります。この 2 種類の整数は値の大きさに応じてお互いに自動的に変換さ れます。ビット操作において整数は無限の長さのビットストリングとみなすこ とができます。
2.4.0 から Fixnum, Bignum は Integerに統合されました。 2.4.0 からはどちらも Integer クラスのエイリアスとなっています。
to_i -> self
[permalink][rdoc]to_int -> self
floor -> self
ceil -> self
round -> self
truncate -> self
self を返します。
例:
10.to_i # => 10
1.floor(2) # => 1.0 1.ceil(2) # => 1.0 1.round(2) # => 1.0 1.truncate(2) # => 1.0
chr -> String
[permalink][rdoc]chr(encoding) -> String
与えられたエンコーディング encoding において self を文字コードと見た時、それに対応する一文字からなる文字列を返します。 引数無しで呼ばれた場合は self を US-ASCII、ASCII-8BIT、デフォルト内部エンコーディングの順で優先的に解釈します。
p 65.chr # => "A" p 0x79.chr.encoding # => #<Encoding:US_ASCII> p 0x80.chr.encoding # => #<Encoding:ASCII_8BIT> p 12354.chr Encoding::UTF_8 # => "あ" p 12354.chr Encoding::EUC_JP # => RangeError: invalid codepoint 0x3042 in EUC-JP p 12354.chr Encoding::ASCII_8BIT # => RangeError: 12354 out of char range p (2**32).chr # => RangeError: bignum out of char range
[SEE_ALSO] String#ord
denominator -> Integer
[permalink][rdoc]分母(常に1)を返します。
例:
10.denominator # => 1 -10.denominator # => 1
[SEE_ALSO] Integer#numerator
downto(min) {|n| ... } -> self
[permalink][rdoc]downto(min) -> Enumerator
self から min まで 1 ずつ減らしながらブロックを繰り返し実行します。 self < min であれば何もしません。
例:
5.downto(1) {|i| print i, " " } # => 5 4 3 2 1
[SEE_ALSO] Integer#upto, Numeric#step, Integer#times
even? -> bool
[permalink][rdoc]自身が偶数であれば真を返します。 そうでない場合は偽を返します。
例:
10.even? # => true 5.even? # => false
gcd(n) -> Integer
[permalink][rdoc]自身と整数 n の最大公約数を返します。
例:
2.gcd(2) # => 2 3.gcd(7) # => 1 3.gcd(-7) # => 1 ((1<<31)-1).gcd((1<<61)-1) # => 1
また、self や n が 0 だった場合は、0 ではない方の整数の絶対値を返します。
3.gcd(0) # => 3 0.gcd(-7) # => 7
[SEE_ALSO] Integer#lcm, Integer#gcdlcm
gcdlcm(n) -> [Integer]
[permalink][rdoc]自身と整数 n の最大公約数と最小公倍数の配列 [self.gcd(n), self.lcm(n)] を返します。
例:
2.gcdlcm(2) # => [2, 2] 3.gcdlcm(-7) # => [1, 21] ((1<<31)-1).gcdlcm((1<<61)-1) # => [1, 4951760154835678088235319297]
[SEE_ALSO] Integer#gcd, Integer#lcm
integer? -> true
[permalink][rdoc]常に真を返します。
例:
1.integer? # => true 1.0.integer? # => false
lcm(n) -> Integer
[permalink][rdoc]自身と整数 n の最小公倍数を返します。
例:
2.lcm(2) # => 2 3.lcm(-7) # => 21 ((1<<31)-1).lcm((1<<61)-1) # => 4951760154835678088235319297
また、self や n が 0 だった場合は、0 を返します。
3.lcm(0) # => 0 0.lcm(-7) # => 0
[SEE_ALSO] Integer#gcd, Integer#gcdlcm
next -> Fixnum | Bignum
[permalink][rdoc]succ -> Fixnum | Bignum
self の次の整数を返します。
例:
1.next #=> 2 (-1).next #=> 0 1.succ #=> 2 (-1).succ #=> 0
[SEE_ALSO] Integer#pred
numerator -> Integer
[permalink][rdoc]分子(常に自身)を返します。
例:
10.numerator # => 10 -10.numerator # => -10
[SEE_ALSO] Integer#denominator
odd? -> bool
[permalink][rdoc]自身が奇数であれば真を返します。 そうでない場合は偽を返します。
例:
5.odd? # => true 10.odd? # => false
ord -> Integer
[permalink][rdoc]自身を返します。
10.ord #=> 10 # String#ord ?a.ord #=> 97
[SEE_ALSO] String#ord
pred -> Integer
[permalink][rdoc]self から -1 した値を返します。
1.pred #=> 0 (-1).pred #=> -2
[SEE_ALSO] Integer#next
rationalize -> Rational
[permalink][rdoc]rationalize(eps) -> Rational
自身を Rational に変換します。
引数 eps は常に無視されます。
例:
2.rationalize # => (2/1) 2.rationalize(100) # => (2/1) 2.rationalize(0.1) # => (2/1)
times {|n| ... } -> self
[permalink][rdoc]times -> Enumerator
self 回だけ繰り返します。 self が正の整数でない場合は何もしません。
またブロックパラメータには 0 から self - 1 までの数値が渡されます。
3.times { puts "Hello, World!" } # Hello, World! と3行続いて表示される。 0.times { puts "Hello, World!" } # 何も表示されない。 5.times {|n| print n } # 01234 と表示される。
[SEE_ALSO] Integer#upto, Integer#downto, Numeric#step
to_r -> Rational
[permalink][rdoc]自身を Rational に変換します。
例:
1.to_r # => (1/1) (1<<64).to_r # => (18446744073709551616/1)
to_s -> String
[permalink][rdoc]to_s(base) -> String
整数を 10 進文字列表現に変換します。
引数を指定すれば、それを基数とした文字列表 現に変換します。
p 10.to_s(2) # => "1010" p 10.to_s(8) # => "12" p 10.to_s(16) # => "a" p 35.to_s(36) # => "z"
upto(max) {|n| ... } -> Fixnum | Bignum
[permalink][rdoc]upto(max) -> Enumerator
self から max まで 1 ずつ増やしながら繰り返します。 self > max であれば何もしません。
例:
5.upto(10) {|i| print i, " " } # => 5 6 7 8 9 10
[SEE_ALSO] Integer#downto, Numeric#step, Integer#times