这感觉就像一个愚蠢的问题,但我无法在Java文档中的任何地方找到答案.如果我宣布两个整数然后除以它们,到底发生了什么?他们是转换为floats/doubles第一,分裂,然后转回一个integer,还是作为整数"完成"?
而且,纯粹来自实验,整数除法似乎将答案舍入为零(即3/2 = 1和-3/2 = -1).我是否正确地相信这一点?
Sim*_*ten 12
Java 会自动转换类型:
“它自动将整数转换为双精度数。即使不涉及整数,它也会自动将短整数和字节转换为整数,当你想要进行短整数或字节算术时,需要不断进行烦人的转换。它自动将原语转换为包装器,反之亦然,用于装箱和自动装箱。” - 用户2357112
如果没有您指定,Java永远不会强制转换任何内容。
但还是integer / integer = integer。
此外,它总是会截断结果。因此,如果结果为 0.999999 作为浮点数,整数除法仍将返回 0。
| 归档时间: |
|
| 查看次数: |
58417 次 |
| 最近记录: |