14

有谁知道如何使用 Groovy 脚本代码将整数转换为具有指定位数的字符串值?例如,我想将整数值 1、2、3、4 转换为 4 位字符串,如“0001”、“0002”、“0003”和“0004”。

4

3 回答 3

22

只需使用Java 的 String.format

def vals = [ 1, 2, 3, 4 ]

def strs = vals.collect {
  String.format( "%04d", it )
}

strs.each { println it }

印刷:

0001
0002
0003
0004

其他选项可以在这里找到

于 2012-07-18T15:57:30.190 回答
8

Use sprintf,它被添加到 Object 类中,因此它始终可用:

assert sprintf("%04d", 1) == "0001"

有关更多信息,请参阅格式字符串的 JDK 文档

于 2012-07-18T23:12:39.163 回答
4

您可以String.format()JN1525-Strings中描述的那样使用

values = [1, 2, 3, 4]
formatted = values.collect {
    String.format('%04d', it)
}
assert formatted == ['0001', '0002', '0003', '0004'] 
于 2012-07-18T22:44:52.103 回答