Ruby 数据类型
Ruby数据类型
Ruby是一种面向对象的动态编程语言,具有自动内存管理功能,支持多种数据类型。这里我们介绍Ruby的数据类型。
数值类型
Ruby支持不同的数值类型,如整型、小数和复数。
整型
Ruby支持不同大小的整型,如Fixnum
(31位)和Bignum
(不受长度限制)。可以使用to_i
方法将字符串转换为整型,如:
num = "100".to_i
小数
Ruby支持小数类型,也称浮点数。默认情况下,Ruby使用Float
类型表示小数。可以使用to_f
方法将字符串转换为浮点数,如:
num = "3.14".to_f
复数
Ruby支持的数值类型中还包括复数类型,可以使用Complex
类来表示复数。如:
z = Complex(1, 2)
进制转换
可以使用to_s
方法将一个十进制整数转换为其他进制的字符串,如:
num = 10.to_s(2) # 将10转换为二进制字符串"1010"
可以使用to_i
方法将一个其他进制的字符串转换成十进制整数,如:
num = "1010".to_i(2) # 将二进制字符串"1010"转换为十进制数字10
布尔类型
Ruby只有两个布尔值:true
和false
。可以使用逻辑运算符&&
、||
和!
来组合和操作不同的布尔值。
x = true
y = false
z = x && y # false
z = x || y # true
z = !x # false
字符串类型
Ruby使用双引号("
)或单引号('
)来定义一个字符串。两种方式的区别在于,双引号可以包含转义字符,单引号不可以。如:
str1 = "Hello\nWorld" # 包含了转义字符'\n'
str2 = 'Hello\nWorld' # 不包含转义字符
Ruby还支持字符串插值,在双引号中可以插入表达式:
name = "Tom"
str = "My name is #{name}"
数组类型
Ruby的数组类型可以存储不同类型的元素,如整型、小数、字符串和其他数组。可以使用[]
来创建一个空数组,使用<<
向数组中添加元素。如:
arr = []
arr << 1
arr << "hello"
也可以使用[]
来创建一个具有初始值的数组,如:
arr = [1, "hello"]
Ruby还提供了许多有用的方法来操作数组,如each
、map
、select
和reduce
等。
哈希类型
Ruby的哈希类型,也称为散列表类型,可以存储键值对。可以使用{}
来创建一个空哈希,使用[]
和=
向哈希中添加键值对。如:
hash = {}
hash["name"] = "Tom"
hash["age"] = 18
也可以使用{}
来创建一个具有初始值的哈希,如:
hash = {"name"=>"Tom", "age"=>18}
可以使用each
方法遍历哈希中的键值对:
hash.each do |key, value|
puts "#{key}: #{value}"
end
总结
Ruby提供了多种有用的数据类型来处理不同的数据。熟练掌握这些数据类型,可以让我们更加高效地编写Ruby代码。