场景
现在要将4在前面补位为0004。
实现
1.首先将方法包装为工具类
String waterCode= CommonUtils.fillZeroBeforeString(String.valueOf(max),4);
其中max为最大值即4,第二个参数4是要将其补位为4位。
2.来到CommonUtils这个工具类中
public static String fillZeroBeforeString(String str , int length) {
return fillStringBeforeString(str,"0",length);
}
用一层静态方法进行封装调用
public static String fillStringBeforeString(String str ,String fill, int length) {
if(str.length() < length) {
StringBuilder sb = new StringBuilder();
for(int i = 0; i < length - str.length() ; i++) {
sb.append(fill);
}
sb.append(str);
return sb.toString();
}else {
return str;
}
}
其中str是需补位的字符串
fill是填补的字符串
length是指定的位数
示例代码
max+=1;
String waterCode= CommonUtils.fillZeroBeforeString(String.valueOf(max),4);
打断点效果:
标签:Java,String,max,length,位数,str,字符串,sb,fill From: https://blog.51cto.com/BADAOLIUMANGQZ/6142073