Integer.MIN_VALUE 是什么意思?

java 复制代码
int max =Integer.MIN_VALUE;  

这个经常在求最大值时出现

Integer.MIN_VALUE 是 Java 中 int 类型的最小值,等于 -2,147,483,648。

用途:

在找最大值时,初始化为最小值,确保任何有效值都能更新它。

java 复制代码
int max = Integer.MIN_VALUE;  // max = -2,147,483,648

// 这样设计的好处:
max = Math.max(max, 1);      // max 会变成 1
max = Math.max(max, -1000);  // max 会变成 1(因为 1 > -1000)
max = Math.max(max, 100);    // max 会变成 100

为什么不用 0?

如果数组全是负数,用 0 初始化会导致结果错误:

java 复制代码
int[] nums = {-5, -3, -1};
int max = 0;  // ❌ 错误!0 比所有负数都大

// 正确做法:
int max = Integer.MIN_VALUE;  // ✅ 任何数都比它大
for (int num : nums) {
    max = Math.max(max, num);  // max 会正确更新为 -1
}

对应的:

  • Integer.MAX_VALUE = 2,147,483,647(int 的最大值)
  • 找最小值时,通常初始化为 Integer.MAX_VALUE

    java 复制代码
    int min = Integer.MAX_VALUE;  // 找最小值时用这个
相关推荐
带刺的坐椅7 分钟前
Solon 的日志设计哲学:不只是用 SLF4J 做统一门面
java·logback·solon·log4j2
雾时之林15 分钟前
python--字符串
开发语言·python
Flittly18 分钟前
【雕虫大技】Agent 动态 Skill 供应链安全加固(二):执行隔离沙箱实战
java·spring boot·spring
程序员黑豆28 分钟前
Java变量详解:从入门到精通
java·前端·ai编程
karry_k29 分钟前
Skill 到底是什么?从提示词、脚本到多智能体工作流的完整指南
java·人工智能·后端
qq_4017004141 分钟前
Qt自定义信号槽详解:带参发射 vs sender()获取,两种多信号关联方案全掌握
java·数据库·qt
啊哈一半醒1 小时前
Go 语言 Context 全方位详解:原理、实战与避坑
开发语言·后端·golang
铅笔侠_小龙虾1 小时前
rust 学习(9):结构体
开发语言·学习·rust
cpp_25011 小时前
P1113 [USACO02FEB] 杂务
数据结构·c++·算法·动态规划·图论·拓扑排序·洛谷题解
月光船幽幽1 小时前
门控函数SHS阈值与调制机制解析
人工智能·python·算法