string,字符串
需要注意双引号 "" 和单引号 '' 的区别。
双引号会对转义字符和特殊字符进行转换
单引号只有少量转换
var1 = "test"
var2 = 'test'
var3 = "#{var1}"
var4 = '#{var1}'
puts var1 == var2
puts var1.object_id == var2.object_id
puts "var3 : " + var3
puts "var4 : " + var4
输出
true
false
var3 : test
var4 : #{var1}
多行文本
同样注意两种引号区别
# multi line 1
name = "Tom"
age = 20
# %Q like "..."
info1 = %Q{
name: #{name}
age : #{age}
}
puts info1
# ----------------------------------
# %q like '...'
info2 = %q{
name: #{name}
age : #{age}
}
puts info2
# ----------------------------------
# % == %Q
info2 = %{
name: #{name}
age : #{age}
}
puts info2
输出
name: Tom
age : 20
name: #{name}
age : #{age}
name: Tom
age : 20
另一种多行文本
# multi line 2
name = "Tom"
age = 20
# <<"" like "..."
info1 = <<"deff"
name: #{name}
age : #{age}
deff
puts info1
# ----------------------------------
# <<'' like '...'
info2 = <<'deff'
name: #{name}
age : #{age}
deff
puts info2
# ----------------------------------
# << == <<""
info2 = <<deff
name: #{name}
age : #{age}
deff
puts info2
输出
name: Tom
age : 20
name: #{name}
age : #{age}
name: Tom
age : 20