0

有没有办法在不写两次 foo 的情况下编写这段代码?

foo? foo : 0

在我的情况下,foovehicle.maintenance.starting_odometer可以想象,如果我必须检查这些对象是否存在,代码会变得非常冗长和丑陋。

4

1 回答 1

5

当然,您可以使用||

foo || 0

析取运算符(称为oror ||)首先查看左侧元素。如果为真(非nilfalse),则返回该值。否则,它评估并返回右侧元素。三元运算符的工作方式相同,除了它允许您指定不同的值来代替原始的“左手”元素。

于 2013-05-13T18:51:23.220 回答