我只是在学习Crystal,并且正在阅读许多有关该语言的内容。来自Ruby,我正在尝试一些以前使用过的东西,例如单行循环:
x += 1 until x === 5
但是,Crystal不支持此功能,是吗?
In src/utils.cr:30:15
30 | x += 1 until x === 5
^
Error: trailing `until` is not supported
是否可以在Crystal中进行单线循环?
while
和until
。但是,您经常可以将循环替换为0.upto(5) { |x| ... }
要在Crystal中压缩单行循环,可以使用冒号,即:
until x === 5; x += 1; end
[我也被指出Crystal-for-Rubyists的写作。