class Integer
クラスの継承リスト: Integer < Precision < Numeric < Comparable < Object < Kernel
要約
整数の抽象クラス。サブクラスとして Fixnum と Bignum があり ます。この 2 種類の整数は値の大きさに応じてお互いに自動的に変換されま す。ビット操作において整数は無限の長さのビットストリングとみなすことが できます。
特異メソッド
induced_from(num) -> Integer
-
num を Integer に変換した結果を返します。 引数が数値の場合は小数部が切り捨てられ、そうでない場合はTypeErrorをraiseします。
Integer.induced_from 1.4 #=> 1 Integer.induced_from 1.9 #=> 1 Integer.induced_from -1.9 #=> -1 Integer.induced_from '1' #=> TypeError
include している Precision モジュールの Precision.induced_from を 上書きしています。
- [PARAM] num:
- 数値
- [RETURN]
- 数値
インスタンスメソッド
self ** other -> Rational | Float | Integer
[redefined by rational]-
冪(べき)乗を計算します。
- [PARAM] other:
- 自身を other 乗する数
計算結果は以下のようになります。
- otherが正または0の整数(Integer)ならば、整数(Integer)を返す。
- otherが負の整数(Integer)ならば、有理数(Rational)を返す。
- otherが有理数(Rational)や浮動小数(Float)ならば、浮動小数(Float)を返す。
例:
2 ** 3 #=> 8 2 ** -3 #=> Rational(1, 8) 2 ** Rational(3) #=> 8.0 2 ** Rational(1, 2) #=> 1.4142135623731
self / other -> Rational | Float | Integer
[redefined by rational]-
商を計算します。
- [PARAM] other:
- 自身を割る数
計算結果は以下のようになります。
- otherが有理数(Rational)ならば、有理数(Rational)を返す。
- otherがそれ以外なら、Integer#/と同じ。つまり、 other が整数(Integer)ならば、整数(Integer)を(整除)、浮動小数(Float)ならば、 浮動小数(Float)を返す。 ただし、いずれも、other == 0 の時は、ZeroDivisionErrorとなる。
- [EXCEPTION] ZeroDivisionError:
- other が 0 の時に発生します。
chr -> String
-
文字コードに対応する 1 バイトの文字列を返します。
例えば65.chr は "A" を返します。
逆に文字列から文字コードを得るには "A"[0] とします
- [RETURN]
- 1バイト文字列
- [EXCEPTION] RangeError:
- self が 0 から 255 の範囲外の場合に発生します。
[SEE_ALSO] String#[]
downto(min) {|n| ... } -> self
downto(min) -> Enumerable::Enumerator
-
self から min まで 1 ずつ減らしながらブロックを繰り返し実行します。 self < min であれば何もしません。
- [PARAM] min:
- 数値
- [RETURN]
- self を返します。
[SEE_ALSO] Integer#upto, Numeric#step, Integer#times
even? -> bool
-
自身が偶数であれば真を返します。 そうでない場合は偽を返します。
integer? -> true
-
常に真を返します。
next -> Fixnum | Bignum
succ -> Fixnum | Bignum
-
self の次の整数を返します。
odd? -> bool
-
自身が奇数であれば真を返します。 そうでない場合は偽を返します。
ord -> Integer
-
自身を返します。
10.ord #=> 10 ?a.ord #=> 97
pred -> Integer
-
self から -1 した値を返します。
1.pred #=> 0 (-1).pred #=> -2
times {|n| ... } -> self
times -> Enumerable::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_i -> self
to_int -> self
-
self を返します。
to_s -> String
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"
- [RETURN]
- 数値の文字列表現
- [PARAM] base:
- 基数となる 2 - 36 の数値。
- [EXCEPTION] ArgumentError:
- base に 2 - 36 以外の数値を指定した場合に発生します。
upto(max) {|n| ... } -> Fixnum | Bignum
upto(max) -> Enumerable::Enumerator
-
self から max まで 1 ずつ増やしながら繰り返します。 self > max であれば何もしません。
- [PARAM] max:
- 数値
- [RETURN]
- self を返します。
[SEE_ALSO] Integer#downto, Numeric#step, Integer#times