当我在ruby控制台中运行以下示例时,我感到很惊讶.它们都产生相同的输出.
"hello".length
Run Code Online (Sandbox Code Playgroud)
和
"hello" .length
Run Code Online (Sandbox Code Playgroud)
ruby控制台如何移除空间并提供正确的输出?
您可以在任何地方放置空格,解释器会查找行尾.例如:
有效
"hello".
length
Run Code Online (Sandbox Code Playgroud)
无效
"hello"
.length
Run Code Online (Sandbox Code Playgroud)
解释器在行尾看到点,知道必须跟进它.而在第二种情况下,它认为线已完成.一行中的空间量也是如此.解释器如何移除空格是否重要?重要的是你知道这种行为.
如果你想要你甚至可以
"hello" . length
Run Code Online (Sandbox Code Playgroud)
它仍然有效.
我知道这不是你问题的答案,但"怎么样"很重要?
编辑:我在下面的评论中得到了纠正.上面给出的多行示例在脚本而不是IRB中运行时都是有效的.我把他们和经营者搞混了.运行脚本时,以下内容也适用:
有效
result = true || false
Run Code Online (Sandbox Code Playgroud)
有效
result = true ||
false
Run Code Online (Sandbox Code Playgroud)
无效
result = true
|| false
Run Code Online (Sandbox Code Playgroud)