Java 取模和除法的区别

标签 java

2 / 4 = 0; // it should be 0.5, but the result is 0

2 % 4 = 2 // its should be 0, cuz there are no remainders, but somehow the result is 2

为什么会给出这个结果,我做错了什么?

最佳答案

对于第一个:由于 24 是整数,因此这是进行整数除法,这意味着任何小数部分都会被丢弃。它会向下舍入。如果您想强制其为浮点型,则需要 2/4.02.0/4。现在其中一个是浮点 double 而不是 int,因此结果也是一个 double

对于第二个:当你将 2 除以 4 时,你得到 0 余数 2,所以答案是 2。我怀疑您正在考虑 4 除以 2,在这种情况下余数肯定是 0,因此如果您尝试 4 % 2,您将得到 0 结果.

关于Java 取模和除法的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26405901/

相关文章:

java - 如何使用 spring xml 将 FAIL_ON_UNKNOWN_PROPERTIES 设置为 false

java - 在java中以循环方式运行线程

java - StreamCorruptedException : invalid stream header

java - 当我运行程序时,JPA 不会在 MySQL 中创建表

java - 在 Spring 和 Hibernate 中同时处理 Controller 、服务和 DAO 层异常的最佳实践是什么

java - 根据字典中的百分比选择选项

java - 在循环之前设置一个整数值

java - 如何检查数组中的所有重复项是否已分组

java - 使用 docker 容器中的 java 访问类路径中的 JSON 文件时遇到 FileNotFoundException(SprintBootApplication)

c# - 如何单击网页上的按钮? Java/C#