我试图探索在ruby中结束或终止语句的各种方法。我知道分号和新行。还有其他可能的方法吗?新行总是终止声明吗?另外,有什么好的编程习惯可以遵循?
答案 0 :(得分:0)
分号在Ruby中不是一个好习惯。换行就足够了。仅当命令缩短代码而不失去人类可读性时,才使用分号分隔命令。例如,您可以使用分号:
posx = 0.0; posy = 0.0; posz = 0.0
而不是:
posx = 0.0
posy = 0.0
posz = 0.0
答案 1 :(得分:0)
还有其他可能的方法吗?
是。例如,在这样的条件表达式中:
if foo then bar else baz end
条件由then
关键字终止,then-branch由else
关键字终止,else-branch由end
关键字终止。
新行总是终止声明吗?
没有。在许多情况下,Ruby可以告诉表达式尚未完成,在这种情况下,换行符不会终止表达式。
一些例子是
没有右操作数的二进制中缀运算符:
23 +
42
foo =
42
一元前缀运算符缺少其操作数:
-
42
!
false
这是一段有趣的小代码:
foo++
bar
# same as
foo + +bar
# same as
foo.+(bar.+@)
未公开的清单:
puts(23,
42)
foo,
bar = 23,
42
[23,
42]
{foo: 23,
bar: 42}
def foo(bar,
baz) end
一个未公开的文字:
[
23, 42
]
{
foo: 23, bar: 42
}
'foo
bar'
"foo
bar"
%w!
hello
world
!
Hash
字面值中缺少值:
{ :foo =>
:bar, baz:
:quux }
发送的邮件缺少要发送的邮件:
23.
to_s
即便如此:
23
.to_s
转换换行符也不会使其终止表达式:
"foo" \
"bar"
可能还有其他几个我不知道。