四、字符串 (string), 是单引号或者双引号包围起来的一串字符,
不同处在于:
双引号 包围的字符作变量替换 ,
单引号 包围的不做替换
可以在字符串中使用 #{expr} 嵌入代码
puts "The seconds in a day is: #{24*60*60}"
puts 'The seconds in a day is: #{24*60*60}'
%q, %Q 用来生成字符串对象 , %q相当于单引号,%Q相当于双引号,其后必须成对出现, 比如//, [], {}, <>
puts %q{test}, %q/test/
puts %q[20*5]
puts %Q{#{20*5}}
五、Range -范围,用来表示一个都是连续的值的序列, 可以使用..和...来产生, 前者表示包含最后一个元素, 后者不包含。
她与Array不同, 可以使用Range 类的to_a 方法将一个Range对象转化为Array对象。
puts (1..5).to_a, (1...5).to_a
puts ('bar'..'bat').to_a
Range还可以存在条件语句中, 可以把她看做一个双向开关,当第一个条件满足时打开开关, 当第二个条件满足时关闭开关
a = [1, 2, 3, 4, 5, 6]
a.each do |i|
print i, ' ' if i == 1 .. i ==5