通用补位函数

Posted 昨日的世界

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通用补位函数相关的知识,希望对你有一定的参考价值。

经常遇到要对某些数据进行补位的情况,有些是数据格式问题,有些是设计的问题,就抽空写了个拙劣的补位函数,

package TestPac;

public class DoCover {


/*******参数 bit 表示固定位数
*******参数 digit 要补位的数字
******参数TOF 表示前补位或后补位,true 前补位, false 后补位
******参数 str用来补位的字符,如0,1,a,b…
**********/
public static String doCover(Integer bit,Integer digit,boolean TOF,String str){
//将数字digit 转换成字符串string类型
//计算字符串 digit的长度length
//计算length与bit的差值diff
//根据TOF确定是要前补位还是后补位.TOF= true前补位,TOF= false后补位
//根据diff进行补位
String digit_str = digit.toString();
Integer diff = bit-digit_str.length();
StringBuffer sb = new StringBuffer(digit_str);
StringBuffer sb_str = new StringBuffer(str);

for(int i=0;i<diff;i++){
if(TOF){//前补位
StringBuffer blank_str = new StringBuffer("");
blank_str.append(sb_str);
sb = blank_str.append(sb);
}
else {// 后补位
sb = sb.append(str);
}
}
System.out.println("***=="+sb.toString());
return sb.toString();
}


public static void main(String[] args) {
// TODO Auto-generated method stub
doCover(4,3,true,"0");
doCover(4,23,true,"0");
doCover(4,756,true,"0");
doCover(4,1234,true,"0");
doCover(4,12345,true,"0");

doCover(4,3,false,"0");
doCover(4,23,false,"0");
doCover(4,756,false,"0");
doCover(4,1234,false,"0");
doCover(4,12345,false,"0");
}

}

以上是关于通用补位函数的主要内容,如果未能解决你的问题,请参考以下文章

sql数据补位

MySql/Oracle中字符串前后自动补全

GBase8a MPP中有哪些加密函数?

iOS 关于大小端以及一些数据补位

补位,稍后补上

入门cout输出的格式(补位和小数精度)