Java包装类用于装箱和拆箱,对应8个基本类型,推荐用valueOf()装箱、判空后拆箱,并利用parseXXX、toString等工具方法。

包装类对应关系要记牢
Java 有 8 个基本类型,每个都有唯一对应的包装类,全部在 java.lang 包中,无需导入:
- byte → Byte
- short → Short
- int → Integer
- long → Long
- float → Float
- double → Double
- char → Character
- boolean → Boolean
三种常见装箱方式
把基本类型转成对象(装箱),推荐用静态工厂方法 valueOf(),它复用缓存对象、更高效:
- ✅ 推荐:Integer num = Integer.valueOf(100); // 不创建新对象(-128~127 范围内)
- ⚠️ 不推荐:Integer num = new Integer(100); // JDK 9+ 已废弃,每次都新建对象
- ✅ 自动装箱(简洁但需谨慎):Integer num = 100; // 编译器自动转为 valueOf(100)
安全拆箱与空值风险
从包装类取回基本值(拆箱)时,若对象为 null,会直接抛 NullPointerException:
Java开发手册规约集合,基于阿里巴巴Java开发手册(嵩山版)。 涵盖7大维度:编程规约、异常日志、单元测试、安全规约、MySQL数据库、工程结构、设计规约。 当用户需要:(1) 编写或审查Java代码 (2) 检查命名/代码规范 (3) 处理异常和日志 (4) 编写单元测试 (5) 安全编码 (6) 数据库设...
- Integer i = null;
int x = i; // 运行时报错! - ✅ 安全做法:先判空再调用 intValue() 等方法
if (i != null) { int x = i.intValue(); } - ✅ 或用 Optional 包装(Java 8+)
Optional.ofNullable(i).map(Integer::intValue).orElse(0);
常用工具方法别忽略
包装类不只是“变对象”,还提供实用静态方法:
立即学习“Java免费学习笔记(深入)”;
- 字符串转数值:Integer.parseInt("123")、Double.parseDouble("3.14")
- 数值转字符串:String s = Integer.toString(42) 或 String.valueOf(42)
- 进制转换:Integer.toHexString(255) → "ff";Integer.parseInt("1010", 2) → 10
- 默认值处理:Integer.getInteger("my.port", 8080) —— 读系统属性,不存在时返回 8080

















