要求:
不要四舍五入,
如果没有小数位,将小数点后面的.0改成.00(比如2转换成2.00,而不是2.0)
不知道会有多少位小数,有多少位显示多少位
我想要达到的结果
比如这种的
88.495000
将后面的0给去掉
要是88.495236
就不用去掉
如果是六个0就保留小数点后两位
比如
100.000000
改成
100.00
不要四舍五入,
如果没有小数位,将小数点后面的.0改成.00(比如2转换成2.00,而不是2.0)
不知道会有多少位小数,有多少位显示多少位
比如这种的
88.495000
将后面的0给去掉
要是88.495236
就不用去掉
如果是六个0就保留小数点后两位
比如
100.000000
改成
100.00
public static void main(String[] args) {
double d = 1203.456000;
int d2= (int) d;
String s1 = String.valueOf(d);
if (s1.contains(".")&d2!=d){
int i = s1.indexOf(".");
for(int j=i;j<s1.length()-1;j++){
int lastIndex=s1.charAt(s1.length()-1);
int io = s1.lastIndexOf("0");
if (lastIndex==io){
s1=s1.substring(0,s1.length()-1);
}
}
}else {
s1+="0";
}
System.out.println(s1);
}
你可以检验一下