如何使用Groovy脚本将整数转换为具有指定长度的String值

时间:2012-07-18 15:55:58

标签: string groovy int

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

3 个答案:

答案 0 :(得分:19)

只需使用Java's String.format

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

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

strs.each { println it }

打印:

0001
0002
0003
0004

其他选项can be found here

答案 1 :(得分:6)

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

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

有关详细信息,请参阅JDK documentation for the format string

答案 2 :(得分:4)

您可以使用JN1525-Strings

中所述的String.format()
values = [1, 2, 3, 4]
formatted = values.collect {
    String.format('%04d', it)
}
assert formatted == ['0001', '0002', '0003', '0004']