为什么数组"each"在 Crystal 1.3.0 中不再工作?我应该改用什么?



下面的代码不打印数组的元素。为什么?

array = [1, 2, 3]
array.each do |x|
puts x
end
array.each { |x| puts x }

Crystal Play输出

它曾经在以前的版本中工作。我知道Crystal不是Ruby,但上面的代码在Ruby中有效。在Crystal中迭代数组的最佳实践是什么?为什么Crystal开发人员决定在这样一个基本的场景中使Crystal与Ruby不兼容?

简短回答:点击"显示输出";右侧框下方。

运行crystal play得到的本地版本的Crystal Playground与在play.Crystal-lang.org上运行的版本有明显的区别。代码有效,但结果的呈现方式不同。

由于某种原因,水晶游乐场无法执行此代码。

不要使用水晶游乐场。它目前几乎是无用的。

把代码放在一个文件中,然后做:

crystal each.cr

您将看到数组元素。

最新更新