-
整数溢出
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
相关推荐
Yeniden5 分钟前
Deepeek用大白话讲解 --> 迭代器模式(企业级场景1,多种遍历方式2,隐藏集合结构3,Java集合框架4)SmoothSailingT14 分钟前
C#——LINQ方法景川呀15 分钟前
Java的类加载器yaoxin52112315 分钟前
274. Java Stream API - 过滤操作(filter):筛选你想要的数据小白勇闯网安圈18 分钟前
Java面向对象(上)k***921618 分钟前
Python 科学计算有哪些提高运算速度的技巧superman超哥18 分钟前
仓颉条件变量深度解析与实践:解锁高效并发同步一点晖光18 分钟前
maven推送项目到harhor私有仓库代码or搬砖39 分钟前
MySQL窗口函数 OVER()讲解道法自然|~1 小时前
【PHP】简单的脚本/扫描器拦截与重要文件保护