-
整数溢出
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
相关推荐
阿俊-全栈开发8 分钟前
LikeShop 单商户SaaS商城分销模块二开:佣金计算与结算逻辑实现怕浪猫2 小时前
2026 年 AI Agent 面试到底考什么?这套题库覆盖了 90% 的高频考点wuminyu3 小时前
C++协程实现接收端的零拷贝Buffer管理原理剖析m0_380743873 小时前
C++中的freopen的用法实例详解Escalating_xu4 小时前
【Python】基础语法(1):常量、变量、类型、输入输出与运算符jimy14 小时前
polymorph.cpp里面的“析构函数、智能指针”问题m0_380743874 小时前
PHP 8.3 缓存清除不生效怎么排查泡沫_花火5 小时前
大模型开发相关岗位面试资料(含算法)朝朝辞暮i5 小时前
C++ 第 6 课:switch —— 多状态选择小凡geo5 小时前
本地商家 GEO:用脚本一键生成 FAQPage 结构化数据,让 AI 切片更稳