您的位置:首页 > 其它

Double、float类型精确到小数点后几位

2016-12-01 09:34 489 查看
需求:返回的一系列数据,精确到小数点后2位

方法一、使用Math.round()

Double value = 0.254668;

(double)Math.round(value*100)/100

方法二、使用DecimalFormat方法

DecimalFormat format=new DecimalFormat(".00");//构造方法的字符格式这里如果小数不足2位,会以0补足.

        String p=format.format(value);//format 返回的是字符串

我当前的需求是计算两个坐标的距离,小于1000米显示米,大于一公里显示公里

    double distance = .....;

      if(distance>1000){

//方法一

                DecimalFormat format=new DecimalFormat(".0");//不足1位,会以0补足.

                String v=format.format(distance/1000);

                Log.i("distance", "DecimalFormat: "+v+"公里");

//方法二

                double a  =(double)Math.round(distance/100)/10;

                Log.i("distance", "Math.round: "+a+"公里");

     }else{

                Log.i("distance", "markPoint: "+(int)distance+"米");

     }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: