我的 java zybook 的代码不适用于浮点格式

My java zybook's code isnt working for floating point formatting

提问人:Prerak Jain 提问时间:3/26/2023 最后编辑:vimuthPrerak Jain 更新时间:3/27/2023 访问量:63

问:

我的教科书是这么说的

1

[这是我的代码]

package streams;

public class streams {
    public static void main(String[] args) {
        Double myDouble = 12345.12345;
        System.out.printf("%10.10f ok %n", myDouble);
        System.out.printf("%-10.10f ok %n", myDouble);
        System.out.printf("%010.10f ok %n", myDouble);
    }
}

[这是我的输出]

12345.1230468750 ok 
12345.1230468750 ok 
12345.1230468750 ok 


我的问题是,为什么小数点前的数字没有格式化?

我预计第一次打印会输出:

 12345.1234500000 ok

第二张照片:

12345.1234500000 确定

第三个:

0000012345.1234500000 确定

Java 双精度浮点

评论

0赞 Prerak Jain 3/26/2023
我玩了代码,发现小数点前的数字只有在我没有越过小数点另一侧的限制时才会被格式化。
0赞 tgdavies 3/26/2023
第一个数字是指数字的整个大小,而不是小数点前的数字数
0赞 Lutz Lehmann 3/26/2023
第一个条目是为给定对象生成的字符串的最小长度。第二个数字是特定于格式的,它可以是点后的数字或有效数字的总数。您可能想尝试将格式说明符更改为 ,看起来 double 首先转换为 single 以符合给定的说明符。lff

答: 暂无答案