对于a = a || b
,a = a && b
,有良好的语法糖a ||= b
,a &&= b
。经常出现的事情是:
a = b || a
a = b && a
是否有良好的语法糖或写一个简短的方法?
答案 0 :(得分:5)
a = b || a
可以改写为:
a = b if b
可以重写,而不必重复a
或b
x = b and a = x
如果表达式a
和b
都超过6个字符,则x = b and a = x
是最短的格式。
答案 1 :(得分:2)
目前没有这样的捷径。
&& =和|| =在CRuby / MRI AST中 NODE_OP_ASGN_AND 和 NODE_OP_ASGN_OR 。仅当左值为假或为零时才评估'rvalue'。