为什么结果小数点后间有一大串0


package scanfprintf;

import java.util.Scanner;

public class Scanfprintf {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        double a,b,c;
        Scanner readerScanner = new Scanner(System.in);
        System.out.println("从键盘输入一个浮点数");
        a = readerScanner.nextDouble();// readerScanner调用方法读取用户从键盘输入的数据,并赋值给a
        b = a*a;
        c = a*a*a;
        System.out.println("b="+b);//输出b
        System.out.println("c="+c);//输出c

    }

}

img

精度问题

因为这是浮点数,建议百度一下java里的浮点数,这部分是易错点,找个整理的完整点的资料细细看会好一些

高精度

精确度问题,不用管的,都是这样!不是个问题

浮点数精度问题,可以使用BigDecimal, 也可以输出的时候格式化一下。比如String.format("%.2f", a)