Java double转string记录

2020-08-05  本文已影响0人  倔强_2722

double转string方式一:Double.toString(d)

public class DoubleConvertToString {

    public static void doubleToString(double d){
        String s = Double.toString(d);
        System.out.println(s);
        if(s.equals("2016010")){
            System.out.println("yes!");
        }else {
            System.out.println("no!");
        }
    }

    public static void main(String[] args) {
        doubleToString(2016010);
    }
}
//整数情况下,低于8位输出结果是
//2016010.0
//no!
//大于等于8位数时,显示成科学计数法的形式
//2.0160101E7
//no!

toString()方式使用时存在此坑,尽量不要使用;

double转string方式二:BigDecimal(d);

public static void doubleToString2(double d){
        BigDecimal bd = new BigDecimal(d);
        String s = bd.toString();
        System.out.println(s);
    }
//这个方法数据是整数时,都能正常转换成字符串,但是当数据为小数时,精度会更加准确,后面会展示更多小数位数,如:
//doubleToString2(20160.00333);
//20160.0033299999995506368577480316162109375

double转string方式三:NumberFormat.format(d);

public static void doubleToString3(double d){
        NumberFormat nf = NumberFormat.getInstance();
        nf.setGroupingUsed(false);
        String format = nf.format(d);
        System.out.println(format);
    }
//此方法的输出格式和输入的格式一样

double转string方法四:DecimalFormat().format(d);

public static void doubleToString4(double d){
        DecimalFormat df = new DecimalFormat();
        df.setGroupingUsed(false);
        String format = df.format(d);
        System.out.println(format);
    }
//DecimalFormat是NumberFormat的子类
上一篇 下一篇

猜你喜欢

热点阅读