Ruby基础数据类型全解析
1. 数字类型
Ruby支持整数和浮点数。整数的长度可以任意(受系统可用内存限制)。在特定范围内(通常是 -230 到 230 - 1 或 -262 到 262 - 1)的整数以二进制形式内部存储,属于 Fixnum
类;超出此范围的整数存储在 Bignum
类的对象中,这个转换过程是透明的,Ruby会自动管理。
num = 81
6.times do
puts "#{num.class}: #{num}"
num *= num
end
输出结果:
Fixnum: 81
Fixnum: 6561
Fixnum: 43046721
Bignum: 1853020188851841
Bignum: 3433683820292512484657849089281
Bignum: 11790184577738583171520872861412518665678211592275841109096961
整数的书写方式可以有可选的前导符号和可选的基数指示符(0 表示八进制,0d 表示十进制(默认),0x 表示十六进制,0b 表示二进制),后面跟着相应基数的数字字符串,数字字符串中的下划线会被忽略。
123456
=> 123456
# Fixnum
0d123456
=> 123456
# Fixnum
123_456
=> 123456
# Fixnu