之前业务需要生成诸如TEST201912100000000008的订单号,订单号后面的10位数字需要进行补0操作,一直用的方法一感觉很笨拙,前段时间突然发现JDK1.5中,String类新增了一个很有用的静态方法String.format(),可以实现此功能及下文方法二。
方法一:利用NumberFormat类中format()方法进行补0操作
public void orderNoTest1() {
//生成诸如TEST201912100000000008的订单号 规则:TEST拼接日期和10位数
Integer num1 = 8;
Integer num2 = 123;
NumberFormat f = new DecimalFormat("0000000000");
String newNo1 = f.format(num1);
String newNo2 = f.format(num2);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMM