public class InvoiceNumberUtils {
// 服务器维护这个数字
// 每次分配之后+1
// cnt可以从0开始
// 你也可以指定一个开始的数字
public static long cnt = 0L;
private static final char[] chars = new char[] {
'2', '3', '4', '5', '6', '7', '8', '9',
'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'j', 'k', 'm', 'n', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'J', 'K', 'M', 'N', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' };
public static String getUUID() {
long m = chars.length;
// 可以打乱顺序,但是 str 这个 一定是第一位的值填充 ,生成多少位取决于 下边数组的长度
char[] str = new char[] { '2', '2', '2', '2', '2', '2' };
int index = str.length - 1;
long tmp = cnt++;
while (tmp != 0) {
//转62进制
str[index--] = chars[(int) (tmp % m)];
tmp /= 54;
}
return String.valueOf(str);
}
}
01-15
1126
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交