-
整数溢出
int i = Integer.MAX_VALUE; // 2,147,483,647
System.out.println(i > i + 1); // true
int i2 = Integer.MIN_VALUE; // -2,147,483,648
System.out.println(i2 < i2- 1); // true
-
浮点数精度问题
double i = Double.MAX_VALUE; // 1.7976931348623157E308
System.out.println(i3 > i 3+ 1); // false
i + 1 的加法由于精度限制不会改变 i 的值(因为 1 相对于 Double.MAX_VALUE 太小)。
因此,i 和 i + 1 实际上相等,i > i + 1 不成立,但如果涉及其他浮点运算,可能因舍入误差导致意外结果
java面试0106-java什么时候会出现i>i+1和i<i-1?
编程岁月2025-09-28 8:21
相关推荐
yoyo_zzm2 分钟前
Laravel6.x新特性全解析AIFarmer8 分钟前
【无标题】Nick_zcy14 分钟前
小说在线阅读网站和小说管理系统 · 功能全解析源码宝17 分钟前
基于 SpringBoot + Vue 的医院随访系统:技术架构与功能实现昇腾CANN22 分钟前
TileLang-Ascend 算子性能优化方法与实操沐知全栈开发33 分钟前
ionic 手势事件详解lsx2024061 小时前
Bootstrap 按钮qinqinzhang1 小时前
Java 中的 IoC、AOP、MVC神仙别闹1 小时前
基于 Python 实现 BERT 的情感分析模型禾叙_1 小时前
【langchain4j】结构化输出(六)