2014-05-09 48 views
0

我正在读取用户在这里发布的其他内容,解释了yield语句在Ruby中的工作方式。他用的是代码的部分是:< > Ruby字符串

print_list([1,2,3], 23) { |n| "<#{n}>"} 

什么的<>意味着里面的字符串?这是一个如此简单的问题,但我一直无法找到答案。

+4

他们没有任何意义。它们只是字符串中的字符。 – sevenseacat

+0

它不能脱离上下文。 – sawa

+3

这个问题似乎是题外话题,因为它是关于一个简单的误解(错误的假设),并且不太可能对未来的读者有所帮助。 –

回答

5

string literal<>都没有任何暗示的含义 - 虽然这可能在输出或使用结果字符串中有意义。

只有escape sequences#(在插值文字中)具有内在含义。

+1

*插值*,@ @,'@@'和'$'的情况下还有一点也有内在含义.. –

+0

@ArupRakshit记住它绝对是好事,尽管我认为这仅仅意味着[大括号可以省略](http://stackoverflow.com/questions/10091156/why-does-string-interpolation-work-in-ruby-when-there-are-no-curly-braces) - 即与“ #'只有。 – user2864740

+0

是的......对!我想我应该在我以前的评论中提到。 :-) –

0

这些字符只是一个string.

一部分,它位于内部#任何字符{}将被评估,这也被称为插值

相关问题