Java以科学记数法打印大双(以下零)

时间:2018-04-10 15:51:57

标签: java printf double

当从一个dat文件中取出一个double作为double时,每个数字在万亿位之后都是零。它以前是用科学记数法打印的,直到我做了printf,之后每个值都丢失了。 输入: 11111111111111111111111111111 打印: 11111111111111112000000000000.000000

String aS = f.nextLine();
        double aD = Double.parseDouble(aS);
        double bD = aD / 2d;
        double cD = aD * 2d;
        String bS = String.valueOf(bD);
        String cS = String.valueOf(cD);
        System.out.printf("%f\n%f\n%f\n",aD,bD,cD);

我已经尝试将aD作为f.nextDouble并且aS是aS的Double.toString转换。我也尝试过printf%100f并且仍然有丢失,并且还尝试格式化字符串版本但仍然有丢失。

0 个答案:

没有答案