JAVA生成数字0~9字母A~Z混合编码0000、0001...0009、000A...000Z、0010......

时间:2023-11-21 16:56:14
分别是求下一个编码  和  输出所有编码
/**
* 用1--9加A--Z混合编码 使用ASCII码判断
* LYL
* 传一个值 求下一个编码
*/
public String getABCDCode(String idValue){
char[] chars=idValue.toCharArray();
if (chars[3]==57){
chars[3]+=8;
}else if (chars[3]<90){
chars[3]++;
} else {
if (chars[2]==57){
chars[2]+=8;
chars[3]=48;
}else if (chars[2]<90) {
chars[2]++;
chars[3] = 48;
}else {
if (chars[1]==57){
chars[1]+=8;
chars[2]=48;
chars[3]=48;
}else if (chars[1]<90){
chars[1]++;
chars[2]=48;
chars[3]=48;
}else {
if (chars[0]==57) {
chars[0] += 8;
chars[1] = 48;
chars[2] = 48;
chars[3] = 48;
}else if (chars[0]<90){
chars[0] ++;
chars[1] = 48;
chars[2] = 48;
chars[3] = 48;
}else {
System.out.print("编码用完了");
}
}
}
}
StringBuffer sbu = new StringBuffer();
for (int i = 0; i < chars.length; i++) {
sbu.append(chars[i]);
}
return sbu.toString();
}
/**
* 用1--9加A--Z混合编码 使用ASCII码判断
* LYL
* 打印所有的
*/ public static void main(String[] args){ String string = "001A";
char[] a=string.toCharArray();
if (a[3]==57){
a[3]+=8;
}else if (a[3]<90){
a[3]++;
} else {
if (a[2]==57){
a[2]+=8;
a[3]=48;
}else if (a[2]<90) {
a[2]++;
a[3] = 48;
}else {
if (a[1]==57){
a[1]+=8;
a[2]=48;
a[3]=48;
}else if (a[1]<90){
a[1]++;
a[2]=48;
a[3]=48;
}else {
if (a[0]==57) {
a[0] += 8;
a[1] = 48;
a[2] = 48;
a[3] = 48;
}else if (a[0]<90){
a[0] ++;
a[1] = 48;
a[2] = 48;
a[3] = 48;
}else {
System.out.print("编码用完了");
}
}
}
}
StringBuffer sbu = new StringBuffer();
for (int i = 0; i < a.length; i++) {
sbu.append(a[i]);
}
System.out.println(sbu.toString());
}