java実現----Stringタイプのデータは10文字未満で、左(または右)で0から10ビットを補います。

889 ワード

1、需要シーン:先端から伝わるSteringパラメータは、長さがデータベースのデータと一致していないので、パラメータを10桁まで補完しないとマッチングできません。
 
2、実現:直接コードを貼る:
public static String addZeroForNum(String str, int strLength) {
	    int strLen = str.length();
	    if (strLen < strLength) {
	        while (strLen < strLength) {
	            StringBuffer sb = new StringBuffer();
	            sb.append("0").append(str);//   0
	            // sb.append(str).append("0");//  0
	            str = sb.toString();
	            strLen = str.length();
	        }
	    }
	    return str;
	}
 この中には二つのパラメータがあります。strは10桁未満の文字列です。stregthは何桁まで補完しますか?直接テストしてみましたが、大丈夫です。
本人はこのコードをテストする前に、string.formatをテストしました。この方法で入ってきたパラメータはint型のデータで、Steringタイプの結果に戻ります。このようなString.format(「%010 d」は、Integer.valueOf(request.get Sold To()))のように、パラメータが0で始まるのではないと上のような効果が得られますが、パラメータが0で始まると、補完0の効果が得られません。私個人もまだ原因が分かりません。探索中です。