ruby-on-rails – 数组*字符串在Ruby中是什么意思?

我正在浏览一些Rails源代码,并发现
# File vendor/rails/activesupport/lib/active_support/vendor/builder-2.1.2/builder/css.rb,line 129
129:     def target!
130:       @target * ''
131:     end

*“做什么?是乘以一个空字符串吗?你为什么要这么做

解决方法

这是一个奇怪的语法.这些是等效的
>> [1,2,3] * 'joiner'
=> "1joiner2joiner3"

>> [1,3].join 'joiner'
=> "1joiner2joiner3"

所以在这种情况下,它将@target的所有条目连接到一个字符串中,条目之间没有任何内容.

注意:如果你做了像[1,3] * 3(使用int而不是str),你会得到三个连接的数组副本.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...