当我写例如:
double d = (4/3)*6;
为什么它把 4/3 看作 1(int?) 而不是 1.333,结果是 6 而不是 8?
谢谢。
最佳答案
4/3
等于 1
,因为它使用整数除法来除两个整数。 4.0/3
将为您提供您期望的结果,因为它将使用浮点除法。
关于java - 这个算术运算有什么问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33033336/
当我写例如:
double d = (4/3)*6;
为什么它把 4/3 看作 1(int?) 而不是 1.333,结果是 6 而不是 8?
谢谢。
最佳答案
4/3
等于 1
,因为它使用整数除法来除两个整数。 4.0/3
将为您提供您期望的结果,因为它将使用浮点除法。
关于java - 这个算术运算有什么问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33033336/