自动生成六位数往后自增编号

getConteactNo("A",1);
public static synchronized String getConteactNo(String prefix,int nowNum ) {
    
    

		StringBuilder builder = new StringBuilder();
		StringBuilder num = new StringBuilder();
		AtomicInteger count = new AtomicInteger(nowNum);
		// 6位数字的采取编号处理。99999的情况下从00001开始采取。
		if (count.get() > 99999) {
    
    
			prefix = "CC";
			count = new AtomicInteger(1);
		}

		// 采用4位数的数字进行序号处理。
		if (count.get() < 10) {
    
    
			num.append("0000").append(count.getAndIncrement());
		}else if (count.get() < 100) {
    
    
			num.append("000").append(count.getAndIncrement());
		} else if (count.get() < 1000) {
    
    
			num.append("00").append(count.getAndIncrement());
		} else if (count.get() >= 10000) {
    
    
			num.append(count.getAndIncrement());
		} else {
    
    
			num.append("0").append(count.getAndIncrement());
		}

		// 组合。
		builder.append(prefix);
		builder.append(num);

		return builder.toString();
	}

测试打印数据

	public static void main(String[] args) {
    
    
		System.out.println(getConteactNo("A",1));
		System.out.println(getConteactNo("A",99999));
	}

控制台输出结果

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_49104405/article/details/123338015