简介:本文将使用Java中String.format()函数、Date()类进行编写流水订单号。
关于String.format()函数的相关知识,可参考我的博客: Java--String.format()函数博客收录
示例代码如下:
package com.example.test;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Test {
public static void main(String[] args) {
//System.out.println("Hello World!");
String test = "CS" + getBody(1005);
System.out.println("test的结果为:" + test);
}
/**
* 编写测试流水订单号
* 测试流水订单号规则:自动生成(CS+6位日期+6位流水号) 示例:CS180529000001 -- 2018/05/29 moon
* @param id
* @return
*/
private static String getBody(Integer id) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
String str = String.format("%06d", id);
System.out.println("str的内容为:" + str);
return sdf.format(new Date()).substring(2, 8) + str;
}
}
测试结果如下:
str的内容为:001005
test的结果为:CS180529001005
在上述代码中,getBody()函数也可简化成如下代码所示:
/**
* 编写测试流水订单号
* 测试流水订单号规则:自动生成(CS+6位日期+6位流水号) 示例:CS180529000001 -- 2018/05/29 moon
* @param id
* @return
*/
private static String getBody(Integer id) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
return sdf.format(new Date()).substring(2, 8) + String.format("%06d", id);
}