Java生成一定規則遞增編號
阿新 • • 發佈:2019-02-12
專案需求中有時需要生成一定規則遞增編號。例如生成裝置編號:裝置型別+五位編號(從1開始,不夠前補0),也就是SYXH000001/SYXH00002/SDOI00001類似這樣。
那麼如何處理000001自增1變為000002呢?
實現程式碼:
package com.lyf.test;
public class Test2 {
/**
* 生成規則裝置編號:裝置型別+五位編號(從1開始,不夠前補0)
*
* @param equipmentType
* 裝置型別
* @param equipmentNo
* 最新裝置編號
* @return
*/
public static String getNewEquipmentNo(String equipmentType, String equipmentNo){
String newEquipmentNo = "00001";
if(equipmentNo != null && !equipmentNo.isEmpty()){
int newEquipment = Integer.parseInt(equipmentNo) + 1;
newEquipmentNo = String.format(equipmentType + "%05d" , newEquipment);
}
return newEquipmentNo;
}
public static void main(String[] args) {
String equipmentNo = Test2.getNewEquipmentNo("SYXH", "00032");
System.out.println("生成裝置編號:" + equipmentNo);
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
執行結果:
生成裝置編號:SYXH00033
- 1
從上面程式碼中可以看到,首先我們默認了一個初始裝置編號,當傳入方法的最新裝置編號為null或是空時將使用。
如果傳入了資料庫中最新裝置編號,將首先Integer的parseInt()方法返回十進位制整數,這樣就可以對其+1。
最後通過String的format()方法進行字串格式化返回就可以了。