Ruby 1.8.7 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Integerクラス

class Integer

クラスの継承リスト: Integer < Precision < Numeric < Comparable < Object < Kernel

要約

整数の抽象クラス。サブクラスとして FixnumBignum があり ます。この 2 種類の整数は値の大きさに応じてお互いに自動的に変換されま す。ビット操作において整数は無限の長さのビットストリングとみなすことが できます。

目次

特異メソッド
induced_from
インスタンスメソッド
** / chr downto even? integer? next succ odd? ord pred times to_i to_int to_s upto

特異メソッド

induced_from(num) -> Integer[permalink][rdoc]

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[permalink][rdoc] [redefined by rational]

冪(べき)乗を計算します。

[PARAM] other:
自身を other 乗する数

計算結果は以下のようになります。

例:

2 **  3             #=> 8
2 ** -3             #=> Rational(1, 8)
2 ** Rational(3)    #=> 8.0
2 ** Rational(1, 2) #=> 1.4142135623731
self / other -> Rational | Float | Integer[permalink][rdoc] [redefined by rational]

商を計算します。

[PARAM] other:
自身を割る数

計算結果は以下のようになります。

[EXCEPTION] ZeroDivisionError:
other が 0 の時に発生します。
chr -> String[permalink][rdoc]

文字コードに対応する 1 バイトの文字列を返します。

例えば65.chr は "A" を返します。

逆に文字列から文字コードを得るには "A"[0] とします

[RETURN]
1バイト文字列
[EXCEPTION] RangeError:
self が 0 から 255 の範囲外の場合に発生します。

[SEE_ALSO] String#[]

downto(min) {|n| ... } -> self[permalink][rdoc]
downto(min) -> Enumerable::Enumerator

self から min まで 1 ずつ減らしながらブロックを繰り返し実行します。 self < min であれば何もしません。

[PARAM] min:
数値
[RETURN]
self を返します。

[SEE_ALSO] Integer#upto, Numeric#step, Integer#times

even? -> bool[permalink][rdoc]

自身が偶数であれば真を返します。 そうでない場合は偽を返します。

integer? -> true[permalink][rdoc]

常に真を返します。

next -> Fixnum | Bignum[permalink][rdoc]
succ -> Fixnum | Bignum

self の次の整数を返します。

odd? -> bool[permalink][rdoc]

自身が奇数であれば真を返します。 そうでない場合は偽を返します。

ord -> Integer[permalink][rdoc]

自身を返します。

10.ord    #=> 10
?a.ord    #=> 97
pred -> Integer[permalink][rdoc]

self から -1 した値を返します。

1.pred      #=> 0
(-1).pred   #=> -2
times {|n| ... } -> self[permalink][rdoc]
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[permalink][rdoc]
to_int -> self

self を返します。

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"
[RETURN]
数値の文字列表現
[PARAM] base:
基数となる 2 - 36 の数値。
[EXCEPTION] ArgumentError:
base に 2 - 36 以外の数値を指定した場合に発生します。
upto(max) {|n| ... } -> Fixnum | Bignum[permalink][rdoc]
upto(max) -> Enumerable::Enumerator

self から max まで 1 ずつ増やしながら繰り返します。 self > max であれば何もしません。

[PARAM] max:
数値
[RETURN]
self を返します。

[SEE_ALSO] Integer#downto, Numeric#step, Integer#times