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

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));
	}

控制台输出结果

在这里插入图片描述


版权声明:本文为weixin_49104405原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。