java 编写一个自动增长的序列号 20 位
时间: 2023-11-28 13:48:56 浏览: 32
下面是一个简单的 Java 代码示例,可以生成一个长度为 20 的自动增长序列号(格式为"yyyyMMddHHmmssSSS" + 6 位递增数字):
```java
import java.text.SimpleDateFormat;
import java.util.Date;
public class AutoIncrementSerialNumber {
private static long num = 0;
private static final SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
public static synchronized String generateSerialNumber() {
Date now = new Date();
String str = sdf.format(now);
if (num >= 999999) {
num = 0;
}
String serialNumber = str + String.format("%06d", num);
num++;
return serialNumber;
}
public static void main(String[] args) {
for (int i = 0; i < 10; i++) {
System.out.println(generateSerialNumber());
}
}
}
```
该示例使用了 SimpleDateFormat 类来格式化当前时间,同时使用一个静态变量 num 来存储递增数字,并通过 synchronized 关键字保证线程安全。最后,调用 generateSerialNumber() 方法即可获取一个新的序列号。