java如何自動補齊數(shù)值至指定位數(shù)
java自動補齊數(shù)值至指定位數(shù)
如流水號需要在數(shù)字前自動補齊0,至指定位數(shù)。
如果已經(jīng)達(dá)到了指定位數(shù),不會補齊,返回原數(shù)值。
? ? /**
? ? ?* 自動補齊位數(shù)
? ? ?* @param length 補齊后的位數(shù)
? ? ?* @param num 待補齊的數(shù)值
? ? ?* @return
? ? ?*/
? ? public static String pad(int length,long num){
? ? ? ? return String.format("%0".concat(String.valueOf(length)).concat("d"), num);
? ? }java字符串前補零和后補零的快速方法
數(shù)字字符串替換方法
? ? ? ? String fileName = "130181";
? ? ? ? System.out.println("================ ?前補零方法一 ? =================");
? ? ? ? DecimalFormat g1=new DecimalFormat("0000000");
? ? ? ? String startZeroStr = g1.format(Integer.valueOf(fileName));
? ? ? ? System.out.println("前補零方法一:"+startZeroStr);
? ? ? ? System.out.println("================ ?前補零方法二,此方法不能對非數(shù)字字符串替換,非數(shù)字的在最后有方法 ? =================");
? ? ? ? startZeroStr = String.format("%07d",Integer.valueOf(fileName));
? ? ? ? System.out.println("前補零方法二:"+startZeroStr);
? ? ? ? System.out.println("================ ?后補零方法一 ? =================");
? ? ? ? DecimalFormat g2=new DecimalFormat("0.000000");
? ? ? ? String endZeroStr = g2.format(Integer.valueOf(fileName));
? ? ? ? System.out.println("后補零:"+endZeroStr);
? ? ? ? System.out.println("雖然后補零出現(xiàn)這種情況,帶有小數(shù)點");
? ? ? ? System.out.println("比如你要長度要在7位以內(nèi),可以這么做");
? ? ? ? System.out.println("后補零轉(zhuǎn)變后:"+endZeroStr.replace(".","").substring(0,7));輸出結(jié)果如下:(后補零后邊還有)
================ 前補零方法一 =================
前補零方法一:0130181
================ 前補零方法二 =================
前補零方法二:0130181
================ 后補零方法一 =================
后補零:130181.000000
雖然后補零出現(xiàn)這種情況,帶有小數(shù)點
比如你要長度要在7位以內(nèi),可以這么做
后補零轉(zhuǎn)變后:1301810
當(dāng)然,后補零通過上邊也能知道就是后邊多補幾個零,然后截取就行了,其實也不用像上邊那么費勁了。直接對內(nèi)容加上一堆零,然后再截取,如下是對某個值補15個零的方法,感覺這才是最直接的后補零。。。
(ynzlJjzz.getCode()+"0000000000000000").substring(0,15)
非數(shù)字字符串前補零
最近有個大佬提了個問題,對非數(shù)字字符串前補零,用%4d替換肯定是不行的,因為%d對應(yīng)的就是數(shù)字格式,如果想對AA字符串前補零到4位,可以這樣寫:
String.format("%4s", "AA").replace(" ","0")相當(dāng)于先對字符串轉(zhuǎn),以空格補滿位數(shù),然后再將空格整體替換為目標(biāo)0。也是一個方法。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
關(guān)于SpringBoot配置項的優(yōu)先級,不再有配置不生效的問題
這篇文章主要介紹了關(guān)于SpringBoot配置項的優(yōu)先級,不再有配置不生效的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-04-04
java中l(wèi)ambda表達(dá)式的分析與具體用法
這篇文章主要給大家介紹了關(guān)于java中l(wèi)ambda表達(dá)式具體用法的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04
Java14對于NullPointerException的新處理方式示例解析
這篇文章主要為大家介紹了Java14對于NullPointerException的新處理方式示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-09-09

