我想要从 0.1 到 2 的数字(例如 0.1、0.2、0.3、0.4 等等到 2.0),因为我是一个时髦的人,我决定 Range
可以完成这项工作,然后来了使用这样的代码:
def a = 0.1..2
println a
但它只打印 [0.1, 1.1]
作为输出!所以我不能在 Range
中执行此操作?还是语法错误?
提前致谢。
最佳答案
这不是微不足道的。 range 对象有一个 step 方法,但这只允许整数步长。 另一种解决方案是定义您自己的范围对象。
如果一个列表也可以,你可以在数字上使用step方法:
0.1.step(2, 0.1){ print "$it "}
另一种解决方案:
(1 .. 20).collect{it/10}
关于groovy - 如何在 Groovy 范围对象中做到这一点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6715686/