我需要在001-999之间返回一个值。所以很自然我可以使用范围:
return 1..999
但是我需要在001和999之间返回一些东西,这意味着填零单个和两个数字的数字。在groovy中有一种优雅的方式吗?
我当然可以使用for循环执行此操作,但可能有更优雅的方法来执行此操作我无法找到。
简单的解决方案是:
(1..999).collect { String.format('%03d', it) }
Manipulate%03d
填充所需的填充物。例如:
`%04d` => 0001
`%05d` => 00001
...... so on and so forth
这可以是一个解决方案:
(1..999).collect {
it.toString().padLeft(3, '0')
}
或者您可能希望您的填充可调整到以下范围:
def range = 1..999
def digitsNum = range.to.toString().length()
def padded = range.collect {
it.toString().padLeft(digitsNum, '0')
}