关注
包装类本质上是将Java中的基本数据类型“包裹”成对象,让基本类型也能具备对象的特性(比如存储到容器、使用面向对象功能等)。具体作用可以简单理解为以下几点:
1. 让基本类型能当“对象”用
- Java中基本类型(如 int 、 double )不是对象,但很多场景必须用对象,比如:
✦ 容器类( ArrayList 、 HashMap )只能存对象,不能直接存 int ,必须用 Integer 包装类。
✦ 多态、反射等面向对象特性需要对象类型,基本类型无法直接参与。
2. 表示“空值”状态
- 基本类型有默认值(如 int 是0, boolean 是false),无法表示“未赋值”或“不存在”;
- 包装类(如 Integer 、 Boolean )可以赋值为 null ,更适合处理数据库查询、接口返回等可能为空的场景。
3. 提供工具方法和常量
- 包装类封装了很多实用功能,比如:
✦ 类型转换: Integer.parseInt("123") 把字符串转成整数;
✦ 常量定义: Integer.MAX_VALUE 表示int的最大值;
✦ 格式化处理: Double.toString(3.14) 把数字转成字符串。
4. 自动拆装箱的“隐藏福利”
虽然需要包装类,但Java有“自动拆装箱”机制(JDK 1.5后),让代码写起来像直接用基本类型一样方便:
// 自动装箱:基本类型→包装类
Integer a = 10; // 等价于 Integer a = Integer.valueOf(10);
// 自动拆箱:包装类→基本类型
int b = a; // 等价于 int b = a.intValue();
举个生活例子类比:
基本类型像“裸装的鸡蛋”(性能高但不好携带),包装类像“鸡蛋盒”(把鸡蛋装盒里,方便放进冰箱、运输)。Java既要性能(裸装鸡蛋省空间),又要面向对象的灵活性(鸡蛋盒方便操作),所以搞了包装类~ 😊
查看原帖
点赞 评论
相关推荐
05-27 16:51
浙江大学 机械制图 点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 职场捅娄子大赛 #
375697次浏览 3828人参与
# 找实习你看重大厂光环还是业务方向 #
14437次浏览 114人参与
# 写给毕业5年后的自己 #
13991次浏览 244人参与
# 你觉得材料专业有必要实习嘛 #
12838次浏览 59人参与
# 多益网络工作体验 #
45309次浏览 236人参与
# 你最满意的offer薪资是哪家公司? #
28692次浏览 158人参与
# 比亚迪求职进展汇总 #
718331次浏览 3077人参与
# 你的房租占工资的比例是多少? #
30329次浏览 342人参与
# 考研对你找工作产生了哪些影响? #
18890次浏览 168人参与
# 神州信息工作体验 #
9919次浏览 41人参与
# 什么专业适合考公 #
32665次浏览 208人参与
# 听到哪句话就代表面试稳了or挂了? #
167462次浏览 1355人参与
# 工作压力大怎么缓解 #
83958次浏览 956人参与
# 牛友们的论文几号送审 #
43698次浏览 769人参与
# 每人推荐一个小而美的高薪公司 #
74717次浏览 1364人参与
# 你觉得技术面多长时间合理? #
95233次浏览 695人参与
# 硬件人秋招的第一个offer #
72939次浏览 1119人参与
# 你有哪些缓解焦虑的方法? #
12537次浏览 312人参与
# 字节跳动工作体验 #
420253次浏览 4448人参与
# 打工人的辛酸 #
40817次浏览 422人参与