1.4Ruby语言的类型(Type)

1.整数(Integer)类型

类型范围
Integer任意精度
进制描述
二进制以 0b(零和小写字母b) 或 0B(零和大写字母B) 开头,后续只能包含数字 0 和 1。
八进制以 0(零) 或 0o(零和小写字母o) 或 0O(零和大写字母O) 开头,后续只能包含数字(0~7)。
十进制以 0d(零和小写字母d) 或 0D(零和大写字母D) 开头,后续只能包含数字(0~9)。
十六进制以 0x(零和小写字母x) 或 0X(零和大写字母X) 开头,后续只能包含 数字(0~9) 和 字母(a~f 或 A~F)。字母(a~f 或 A~F) 表示数字 10 到 15。

为了提高数值的可读性,下划线(_)可以用作分隔符,解析时会被 Ruby 解释器移除。

#作为千分位分隔符
1_000_000_000

2.浮点(Float)类型

类型范围
Float±Float::MIN ≤ n ≤ ±Float::MAX

浮点数还可以使用科学记数法来表示:一个数值(整数或浮点数)后跟一个大写或小写的字母 e(表示乘以 10),再跟一个前面的乘以 10 的多少次幂。

#十进制形式
5.12

#科学记数法形式
#注意:这是浮点数500.0,而不是整数500。
5e2
#注意:这是浮点数512.0,而不是整数512。
5.12e2

浮点类型还包括五个特殊的值:

描述示例
Infinity(正无穷)
-Infinity(负无穷)
任何无法表示的最大正数或最小负数。Float::MAX * 2 # Infinity
-Float::MAX * 2 # -Infinity
0.0(正零)
-0.0(负零)
任何无法表示的最小正数或最大负数。1/Float::INFINITY # 0.0
-1/Float::INFINITY # -0.0
NaN(Not a Number,非数值)在数学运算中,当遇到一些无法运算的情况时,使用 NaN 表示这种情况,而不是抛出错误。Float::INFINITY/Float::INFINITY # NaN

关于进制部分,与上述整数类型描述一样。

关于下划线部分,与上述整数类型描述一样。

3.TrueClass类型和FalseCLass类型

类型
TrueClasstrue
FalseClassfalse
类型这些值被认为是假性(Falsy)
FalseClassfalse
NilClassnil

4.BasicObject类型

BasicObject 是所有类型的根类型。

类型描述
BasicObject详见类章节

5.对象(Object)类型

类型描述
Object详见类章节

6.模块(Module)类型

类型描述
Module详见模块章节

7.Class类型

类型描述
Class详见类章节

8.方法(Method)类型

类型描述
Method详见方法章节

9.Proc类型

类型描述
Proc详见方法章节

10.字符串(String)类型

类型描述
String详见字符串章节

11.符号(Symbol)类型

类型描述
Symbol详见符号章节

12.数组(Array)类型

类型描述
Array详见数组章节

13.哈希(Hash)类型

类型描述
Hash详见哈希章节

14.集合(Set)类型

类型描述
Set详见集合章节

15.范围(Range)类型

类型描述
Range范围类型
# a(包含) 到 b(包含)之间的值
a..b

# a(包含) 到 b(不包含)之间的值
a...b

16.NilClass类型

类型描述
NilClassnil空对象

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/ruby/rubylang/37199.html

(0)
huoxiaoqiang的头像huoxiaoqiang
上一篇 2025年2月4日 14:29
下一篇 2025年2月5日 00:09

相关推荐

发表回复

登录后才能评论