Ruby中的单行
我创建了以下内容(这是更多代码的一部分,但只有这一行有问题):
if number_to_test % divisor == 0 then number_of_divisors+= 1 end
我想用缩短它
if number_to_test % divisor == 0 { number_of_divisors+= 1 }
但我有
syntax error, unexpected '{', expecting keyword_then or ';' or 'n'
if number_to_test % divisor == 0 { number_of_divisors+= 1 }
^
syntax error, unexpected '}', expecting keyword_end
我想我可以把长形式改成{}
你能告诉我正确的语法吗(如果可能的话)
也许我只是想做结束块而不是if语句?
if
语句是"向后"完成的,可以说是:
number_of_divisors += 1 if number_to_test % divisor == 0
正如预期的那样,unless
也同样适用。
你可以做:
number_of_divisors+= 1 if number_to_test % divisor == 0
number_of_divisors+= 1 if number_to_test % divisor == 0
会更好。
修正了:ruby没有++。