String val = "98"
我需要将输出设为0000098
(7位)。
我需要将零填充为字符串或整数值......
存储在val中的数字是动态的,可能包含任意数量的数字,但输出应始终为7位数。
答案 0 :(得分:19)
在groovy中,你可以像这样填充字符串:
val.padLeft( 7, '0' )
这将用零填充字符串的左边,直到它长度为7个字符
答案 1 :(得分:11)
public class A {
public static void main(String[] args) {
System.out.println(String.format("%07d", 98)); // -> 0000098
}
}
答案 2 :(得分:0)
查看http://commons.apache.org/lang/api-2.5/org/apache/commons/lang/StringUtils.html,其中包含leftpad
,rightpad
...
答案 3 :(得分:0)
您可以使用NumberFormat格式化String值:
NumberFormat formatter = new DecimalFormat("0000000");
这意味着您的String将根据需要以0结束。
然后,为了获得你的String格式,你可以这样做:
String formatRes = formatter.format(new Double(val));
因为“format”方法需要double作为参数。