Ruby 中字符串插值 (String Interpolation) 的用法?

· 约 3 分钟读完 · 第 16 / 199 章

推荐答案

在 Ruby 中,字符串插值是一种将变量或表达式嵌入到字符串中的方法。通过使用 #{} 语法,可以在双引号字符串中直接插入变量或表达式的值。

输出结果为:

本题详细解读

1. 字符串插值的基本用法

字符串插值只能在双引号字符串中使用。在双引号字符串中,#{} 内的内容会被 Ruby 解释器解析并替换为其对应的值。

输出结果为:

2. 插值中的表达式

不仅变量可以用于插值,任何 Ruby 表达式都可以放在 #{} 中,Ruby 会计算该表达式并将结果插入到字符串中。

输出结果为:

3. 单引号字符串与插值

单引号字符串不支持插值。在单引号字符串中,#{} 会被视为普通字符,不会被解析。

输出结果为:

4. 插值与转义字符

双引号字符串不仅支持插值,还支持转义字符(如 \n 表示换行)。而单引号字符串则不支持转义字符(除了 \\ 和 \')。

输出结果为:

5. 插值的性能考虑

由于双引号字符串支持插值和转义字符,Ruby 在解析双引号字符串时需要更多的处理时间。因此,在不需要插值或转义字符的情况下,使用单引号字符串可以提高性能。

6. 插值与复杂表达式

插值不仅可以用于简单的变量和表达式,还可以用于复杂的表达式,甚至是方法调用。

输出结果为:

通过这些示例,我们可以看到 Ruby 的字符串插值功能非常强大且灵活,能够方便地将变量和表达式嵌入到字符串中。