2009年5月11日星期一

ruby的数值型

2进制,8进制,16进制向数值型转换


p 0b10000    #=> 16
p 020    #=> 16
p 0x10    #=> 16



数值型向2进制,8进制,16进制转换


s = 255.to_s(2)    #=> "11111111"
s = "%b" % 255    #=> "11111111"
s = sprintf("%o", 255)    #=> "377"
s = format("%x", 255)    #=> "ff"



求商和余数的计算


i = 10
p i % 3    #=> 1
p i.divmod(3)    #=> [3, 1]



求绝对值的计算


i = -5
p i.abs    #=> 5
i=100
p i.abs    #=> 100



返回比float大的最小整数


f = 3.4
p f.ceil    #=> 4



返回比float小的最大整数


f = 3.4
p f.truncate    #=> 3



四舍五入到一个整数


f1 = 3.4
f2 = 3.5
p f1.round    #=> 3
p f2.round    #=> 4



返回float截掉小数点后的整数


f = 3.48
p f.to_i    #=> 3



取得一个随机数


p rand(100)    #=> 17

没有评论:

发表评论