在groovy中,如何返回零填充范围?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在groovy中,如何返回零填充范围?相关的知识,希望对你有一定的参考价值。

我需要在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')
}

以上是关于在groovy中,如何返回零填充范围?的主要内容,如果未能解决你的问题,请参考以下文章

如何在片段中填充列表视图?

在 SQL Server 中为指定的值范围填充前导零的字符串

如何在列表中分组并填充零

如何优化C ++代码的以下片段 - 卷中的零交叉

如何将数据从 BottomSheetDialogFragment 返回到父片段

运行代码时,它返回 - 范围类的自动填充方法在代码的最后一行失败:VBA