Did*_* A. 2 ruby syntax programming-languages
为什么:
test = [1, 1, 1].collect do |te|
te + 10
end
puts test
Run Code Online (Sandbox Code Playgroud)
有效,但不是:
puts test = [1, 1, 1].collect do |te|
te + 10
end
Run Code Online (Sandbox Code Playgroud)
然而这有效:
puts test = [1, 1, 1].collect { |te|
te + 10
}
Run Code Online (Sandbox Code Playgroud)
对于我不知道的块,do/end构造和{}构造之间是否存在差异?
Chr*_*ung 10
在"不工作"的情况下,该块实际上附加到puts
呼叫,而不是collect
呼叫.{}
绑定比...更紧密do
.
下面的显式括号显示了Ruby解释上述语句的方式的不同之处:
puts(test = [1, 1, 1].collect) do |te|
te + 10
end
puts test = ([1, 1, 1].collect {|te|
te + 10
})
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
387 次 |
最近记录: |