实例解析Ruby中的数值类型以及常量

时间:2022-03-04 17:21:20

数值类型(Number)
整型(Integer)
整型分两种,如果在31位以内(四字节),那为Fixnum实例。如果超过,即为Bignum实例。
整数范围从 -230 到 230-1 或 -262 到 262-1。在这个范围内的整数是类 Fixnum 的对象,在这个范围外的整数存储在类 Bignum 的对象中。
您可以在整数前使用一个可选的前导符号,一个可选的基础指标(0 对应 octal,0x 对应 hex,0b 对应 binary),后跟一串数字。下划线字符在数字字符串中被忽略。
您可以获取一个 ASCII 字符或一个用问号标记的转义序列的整数值。
实例

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
123         # Fixnum 十进制
1_234        # Fixnum 带有下划线的十进制
-500         # 负的 Fixnum
0377         # 八进制
0xff         # 十六进制
0b1011        # 二进制
"a".ord       # "a" 的字符编码
?\n         # 换行符(0x0a)的编码
12345678901234567890 # Bignum
#整型 Integer 以下是一些整型字面量
#字面量(literal):代码中能见到的值,数值,bool值,字符串等都叫字面量
#如以下的0,1_000_000,0xa等
a1=0
 
#带千分符的整型
a2=1_000_000
 
#其它进制的表示
a3=0xa
puts a1,a2
puts a3
#puts print 都是向控制台打印字符,其中puts带回车换行符 <br>=begin <br>这是注释,称作:嵌入式文档注释 <br>类似C#中的/**/ <br>=end


浮点型
Ruby 支持浮点数。它们是带有小数的数字。浮点数是类 Float 的对象,且可以是下列中任意一个。
实例

?
1
2
3
4
123.4        # 浮点值
1.0e6        # 科学记数法
4E20         # 不是必需的
4e+20        # 指数前的符号

 

?
1
2
3
4
5
#浮点型
f1=0.0
f2=2.1
f3=1000000.1
puts f3


算术操作
加减乘除操作符:+-*/;指数操作符为**
指数不必是整数,例如

?
1
2
3
#指数算术
puts 2**(1/4)#1与4的商为0,然后2的0次方为1
puts 16**(1/4.0)#1与4.0的商为0.25(四分之一),然后开四次方根

Ruby 常量
常量以大写字母开头。定义在类或模块内的常量可以从类或模块的内部访问,定义在类或模块外的常量可以被全局访问。
常量不能定义在方法内。引用一个未初始化的常量会产生错误。对已经初始化的常量赋值会产生警告。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/usr/bin/ruby
# -*- coding: UTF-8 -*-
 
class Example
  VAR1 = 100
  VAR2 = 200
  def show
    puts "第一个常量的值为 #{VAR1}"
    puts "第二个常量的值为 #{VAR2}"
  end
end
 
# 创建对象
object=Example.new()
object.show

在这里,VAR1 和 VAR2 是常量。这将产生以下结果:

?
1
2
第一个常量的值为 100
第二个常量的值为 200