zl程序教程

您现在的位置是:首页 >  后端

当前栏目

判断数值有效位数的Java工具类详解编程语言

JAVA工具编程语言 详解 判断 数值
2023-06-13 09:20:30 时间
public static String adjustDouble(String s,int numOfIntPart,int numOfDecimalPart){ //按小数点的位置分割成整数部分和小数部分 String[] array = s.split("//."); char[] tempA=new char[numOfIntPart]; char[] tempB=new char[numOfDecimalPart]; //整数部分满足精度要求(情况1) if(array[0].length()==numOfIntPart){ //直接获取整数部分长度字符 for(int i=0;i array[0].length();i++){ tempA[i]=array[0].charAt(i); //小数部分精度大于或等于指定的精度 if(numOfDecimalPart =array[1].length()){ for(int i=0;i numOfDecimalPart;i++){ tempB[i]=array[1].charAt(i); //小数部分精度小于指定的精度 if(numOfDecimalPart array[1].length()){ for(int i=0;i numOfDecimalPart;i++){ if(i array[1].length()){ tempB[i]=array[1].charAt(i); }else{ tempB[i]=0;
//先倒序获取指定位数的整数 for(int i=array[0].length()-1,j=0;(i =array[0].length()-numOfIntPart) (j numOfIntPart);i--,j++){ tempA[j]=array[0].charAt(i); System.out.println(tempA[j]); char[] tempA1=new char[numOfIntPart]; //调整顺序 for(int j=0,k=tempA.length-1;j numOfIntPart (k j++,k--){ tempA1[j]=tempA[k]; System.out.println("tempA1[j]"+tempA1[j]); //小数部分精度大于或等于指定的精度 if(numOfDecimalPart =array[1].length()){ for(int i=0;i numOfDecimalPart;i++){ tempB[i]=array[1].charAt(i); //小数部分精度小于指定的精度 if(numOfDecimalPart array[1].length()){ for(int i=0;i numOfDecimalPart;i++){ if(i array[1].length()){ tempB[i]=array[1].charAt(i); }else{ tempB[i]=0;
//先倒序获取指定位数的整数 for(int i=array[0].length()-1,j=0;(i =array[0].length()-numOfIntPart+1) (j numOfIntPart);i--,j++){ //System.out.println(" "+(i-array[0].length()+1)); tempA[j]=array[0].charAt(i); char[] tempA1=new char[numOfIntPart]; //调整顺序 for(int j=0,k=tempA.length-1;j numOfIntPart (k j++){ tempA1[j]=tempA[k]; k--; //小数部分精度小于指定的精度 if(numOfDecimalPart array[1].length()){ for(int i=0;i numOfDecimalPart;i++){ if(i =array[1].length()){ tempB[i]=0; }else{ tempB[i]=array[1].charAt(i);
char[] tempA1=new char[numOfIntPart]; for(int i=array[0].length()-1,j=0;(i =numOfIntPart-array[0].length()-(numOfIntPart-array[0].length())) (j numOfIntPart);i--,j++){ tempA1[j]=array[0].charAt(i); System.out.println(" tempA1[j]"+tempA1[j]); //补0 for(int i=array[0].length();i array[0].length()+numOfIntPart-array[0].length();i++){ tempA1[i]=0; System.out.println(" "+tempA1[i]); char[] tempA2=new char[numOfIntPart]; //调整顺序 for(int j=0,k=tempA1.length-1;j numOfIntPart (k j++){ tempA2[j]=tempA1[k]; k--; //小数部分精度小于指定的精度 if(numOfDecimalPart array[1].length()){ for(int i=0;i numOfDecimalPart;i++){ if(i array[1].length()){ tempB[i]=array[1].charAt(i); }else{ tempB[i]=0;
//情况(6) if((array[0].length() numOfIntPart) (array[1].length() numOfDecimalPart)){ for(int i=0; i numOfIntPart-array[0].length(); i++){ s = "0"+s ;

10919.html

cjava