-
整数溢出
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
相关推荐
Zenova EdgeOS2 分钟前
C++ 工业边缘 libcurl HTTP 客户端实战后台模板学习12 分钟前
2026最新面试真题:到达用英语怎么说背后的逻辑与源码剖析Java小白笔记15 分钟前
Java 单元测试怎么写:JUnit 5、Mockito 与 Spring Boot 方法级实战Jackson_GJH27 分钟前
Qt 右键自定义菜单的实现Thomas214343 分钟前
mysql 索引面试复习CoderYanger1 小时前
前端基础——JavaScript(WebAPI)(下篇)lisin-lee-cooper1 小时前
简单聊聊 Spring 框架源码一木 之林1 小时前
七、一-AI 工程实践、插件化调试与软件交付边境悍匪1 小时前
蜗牛学苑 Java 智能体学习 Day38|Spring AI Alibaba2 思维导图复盘Co_Hui1 小时前
Java 静态内部类、非静态内部类、匿名内部类的区别?