版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010725171/article/details/81776627
float类型的数据保留2位小数
常规写法:
String.format方式:
float a1;
String.format("%.2f",a1);
DecimalFormat方式:
DecimalFormat df = new DecimalFormat("0.00");
return df.format(value);//value为long类型
以上两种方式本猿亲测的结果:
小数点跟随语言的变化,德语葡语西语等环境下会变成逗号,坑爹啊!
推荐写法:
Math.round方式
float a;
float a1 = (float)(Math.round(a*100))/100;
//测试代码,语言环境为葡萄牙语
float a = 1234.1234f;
Logger.d("forlan debug String.format ********** " + String.format("%.2f", a));
Logger.d("forlan debug Math.round ========== " + (float)(Math.round(a*100))/100);
结果:
forlan debug String.format ********** 1234,12
forlan debug Math.round ========== 1234.12
总结:
浮点型数据小数位数的处理,建议使用Math.round方法