Float

浮点数的类. Float与C语言的double相同,其精度要看环境而定.

# 在某系统上计算 1/3(=0.333...) 的结果
printf("%.50f\n", 1.0/3)
=> 0.33333333333333331482961625624739099293947219848633

超类:

包含的模块:

类方法:

Float.induced_from(num)

num变换为Float并返回其结果.

方法:

self + other
self - other
self * other
self / other
self % other
self ** other

算术操作符. 分别计算和、差、积、商、余数、幂.

self <=> other

比较selfother, 若self大时返回正数,若相等时返回0,若小时返回负数.

self == other
self < other
self <= other
self > other
self >= other

比较操作符.

finite?

若某数值既非∞又非NaN则返回真

infinite?

若某数值为+∞则返回1, 若为-∞则返回-1, 除此以外返回nil.浮点数除以0得∞.

inf = 1.0/0
p inf
p inf.infinite?

=> Infinity
   1

inf = -1.0/0
p inf
p inf.infinite?

=> -Infinity
   -1
nan?

当某数值为NaN(Not a number)时返回真. 浮点数的0除以0得NaN.

nan = 0.0/0.0
p nan
p nan.nan?

=> NaN
   true
to_f

返回self.

to_i
truncate

删除某数的小数部分后将其变为整数.

请参考round, ceil, floor.

常数:

与浮点数相关的常数 ruby 1.8 特性

请参考Math来了解与浮点数相关的常数,如PI等.

DIG

Float 能处理的最大的10进制位数

EPSILON

满足1.0 + Float::EPSILON != 1.0这一条件的最小值

MANT_DIG

尾数部分的Float::RADIX 进制的位数

MAX
MIN

Float 可取的最大值和最小值

MAX_10_EXP
MIN_10_EXP

最大/最小的10进制的指数

MAX_EXP
MIN_EXP

最大/最小的Float::RADIX进制的指数

RADIX

指数形式中的基数

ROUNDS

舍入模式 (-1: 不定,0: 向0.0的方向舍入,1: 四舍五入,2:向正无限大方向舍入,3:向负无穷大方向舍入)