gpt4 book ai didi

java 双数除法给出奇怪的输出

转载 作者:行者123 更新时间:2023-12-01 18:14:15 24 4
gpt4 key购买 nike

发现下面的输出很奇怪。真的吗?

double rate =  11/12; // outputs 0.0

double rate = 11.00/12; // outputs 0.916666667;

为什么差别这么大?

最佳答案

在第一种情况下,首先进行除法,将 int 除以 int 得到一个整数,即 11/12=0 然后该整数转换为 double,即 0.0。在第二种情况下,double(11.00) 除以整数(12)。然后整数 12 会自动类型转换为 double,因为相似类型应该发生除法。该除法给出了现实中准确的 double 值(0.916666667)

查看此链接 https://docs.oracle.com/javase/specs/jls/se7/html/jls-5.html

关于java 双数除法给出奇怪的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30668311/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com