2016-03-08 107 views
-1

情況1,如果數量爲123的結果:00 情況2如果號碼是0結果:123123
殼體3如果號碼10231239結果:10231239
殼體4如果數量是結果:1231239爪哇:在數字字符串操作到六位

我曾嘗試爲波紋管但需要爲這個

public static void main(String[] args) 
{ 
    String number = "0023213"; 
    number = number.trim(); 
    String result; 
    if(number.length() < 6) 
    { 
     result = String.format("%06d", Integer.parseInt(number)); 
     System.out.println(result); 
    } 
    else if (number.trim().length()>6) 
    { 
     result = number.replaceFirst("^0+(?!$)", ""); 
     result = String.format("%06d", Integer.parseInt(result)); 
     System.out.println(result); 
    } 
} 
+0

所以你想要做的是在開始時刪除0? – TheLostMind

+0

它不只是刪除0的開始,而是通過追加前導0來保留它的六位數字,如果數字是1231235,它必須是相同的,如果數字是01123123結果必須是1123123 – djCode

回答

0

只需使用Apache常見Lang庫:

String str = "1123456"; 
str = StringUtils.leftPad(StringUtils.stripStart(str, "0"), 6, "0"); 

我覺得這是更具可讀性。

0

(對於其他部分的代碼),較好地解決這一個會爲你工作。只要後面有6位數字,就會刪除前導零。

public static void main(String[] args) { 
    String s = "0023123"; 
    System.out.println(s.replaceAll("^0+(?=\\d{6})", "")); 
} 

O/P

023123 

樣品輸入:00000110023123

示例輸出:110023123