java - 不同数据类型的数学运算是否不同?

标签 java types operator-precedence

为什么第一行中 SevenTwelfths 的计算结果为预期答案 (0.5833),而 ThreeTwentySixths 的计算结果为 0?我假设由于数据类型是 double 型,因此将 3 除以 26 的运算将是小数,但看起来好像它是作为整数运算执行该运算,然后将结果转换为 double 型并将其存储在 ThreeTwentySixths 中。

    double sevenTwelfths = ((double) 7 / 12);
    double threeTwentySixths = 3 / 26;

最佳答案

双七十二 = ((双) 7/12);

在第一行中,这称为类型转换,这意味着您正在将答案转换为 double

int SevenTwelfths=((int)7/12)); 这意味着除以 7/12 后,无论 anser 转换为 int 或 Type 转换为 int

关于java - 不同数据类型的数学运算是否不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46598487/

相关文章:

c# - 可选参数: reversed precedence if override of overload exists

SQL逻辑运算符优先级: And and Or

java - 查找特定字体的所有适用字体大小

java - 字符到字符串的帮助

java - 同步 MDB 通信,最大池大小问题

java - HashSet 代替 ArrayList 在性能上存在缺陷

typescript - 如何在模块本身内部为模块定义类型?

java - 可以通过 Java 泛型类型系统强制执行自然排序吗?

haskell - get 和 put 函数的作用是什么?

c++ - 列表初始化中元素的评估顺序