Ruby中语句和表达的区别是什么?

ste*_*ang 6 ruby expression

我知道在Ruby中,几乎所有东西都是表达式.甚至那些使用其他语言的if-else语句,例如语句,case语句,赋值语句,循环语句也是Ruby中的表达式.

所以我想从Ruby的观点来看,语句和表达之间的区别是什么?

Ale*_*ohl 5

Ruby 中表达式和语句没有区别。一切都会计算为一个值,因此一切都是一个表达式。

  • 它们是有区别的。`a if b` 是一个语句,但 `(a if b)` 成为一个表达式。结果是 `puts(a if b)` 是一个语法错误,但 `puts((a if b))` 是可以的,因为方法参数必须是表达式。 (4认同)