需求:
版本号从1开始递增,页面展示为A-ZZ
例如:
version = 1 ,则 versionDisplay = A
version = 27 ,则 versionDisplay = AA
具体代码实现如下:
public class Test{ public String getVersionDisplay(int version){ if(version < 1){ throw new RuntimeException("订单的版本号不能小于1"); } if(version > 702){ throw new RuntimeException("订单修改次数过多,请您创建新的订单"); } String result; // A对应的ASCII编码为65 // 因为第一位编号默认从1开始,version = 1时, first = A // first = first + version // 故first取值64 int first = 64; int second = 65; // 如果version小于26,则只有一位编号;如果大于26,则有两位编号。 if(version > 26){ // 通过整除,得到第一位编号 first = first + (version - 1)/26; // 通过取余,得到第二位编号 second = second + (version - 1)%26; result = (char) first + "" + (char) second; }else{ first = first + version; result = (char) first + ""; } return result; } }