Java Double avoids scientific notation

Code

package com.me.basic;

import java.math.BigDecimal;
import java.text.DecimalFormat;

public class ScientificCounting {
    
    

    public static void main(String[] args) {
    
    
        funcOne();
        System.out.println("============");
        funcTwo();
    }

    public static void funcOne(){
    
    
        Double double1 = 12345678966.123456789;
        //格式化设置
        DecimalFormat decimalFormat = new DecimalFormat("#,##0.00");
        System.out.println(decimalFormat.format(double1));
        System.out.println(double1);
    }


    public static void funcTwo(){
    
    
        Double dd = 12345678966.123456789;
        BigDecimal bigDecimal = new BigDecimal(dd.toString());
        System.out.println(bigDecimal);
        System.out.println(dd);
    }


}

operation result

12,345,678,966.12
1.2345678966123457E10
============
12345678966.123457
1.2345678966123457E10

Guess you like

Origin blog.csdn.net/thebigdipperbdx/article/details/112969867