当前位置: 首页 > news >正文

83-Java 自动装箱和拆箱

Java 自动装箱和拆箱

在本教程中,我们将借助示例学习Java自动装箱和拆箱。

Java自动装箱-包装器对象的原始类型

自动装箱中,Java编译器会自动将原始类型转换为其相应的包装器类对象。例如,

int a = 56; // 自动装箱 Integer aObj = a;

使用Java集合时,自动装箱具有很大的优势。

示例1:Java自动装箱

示例

import java.util.ArrayList; class Main { public static void main(String[] args) { ArrayList<Integer> list = new ArrayList<>(); //自动装箱 list.add(5); list.add(6); System.out.println("ArrayList: " + list); } }

输出结果

ArrayList: [5, 6]

在上面的示例中,我们创建了一个Integer类型的数组列表。因此,数组列表只能包含Integer类型的对象。

注意这一行,

list.add(5);

在这里,我们传递原始类型值。但是,由于自动装箱,原始值会自动转换为Integer对象并存储在数组列表中。

Java拆箱-包装器对象为原始类型

拆箱中,Java编译器会自动将包装器类对象转换为其相应的原始类型。例如,

// 自动装箱 Integer aObj = 56; // 拆箱 int a = aObj;

自动装箱一样,拆箱也可以与Java集合一起使用。

示例2:Java拆箱

示例

import java.util.ArrayList; class Main { public static void main(String[] args) { ArrayList<Integer> list = new ArrayList<>(); //自动装箱 list.add(5); list.add(6); System.out.println("ArrayList: " + list); // 拆箱 int a = list.get(0); System.out.println("Value at index 0: " + a); } }

输出结果

ArrayList: [5, 6] Value at index 0: 5

在上面的示例中,请注意以下行:

int a = list.get(0);

这里,get()方法返回索引0处的对象。但是,由于拆箱,对象被自动转换为原始类型int并分配给变量a。


🎁 福利时间

如果你正在备战面试或者想要学习其他知识,给大家推荐一个宝藏知识库,作者整理了一些列 Java 程序员需要掌握的核心知识,有需要的自取不谢。

知识库地址:https://farerboy.com/


http://www.jsqmd.com/news/980887/

相关文章:

  • Steam成就管理终极教程:如何快速解锁、重置和管理你的Steam成就
  • 莲湖区家政公司选型:防水补漏、通马桶与保姆月嫂护工参考 - 资讯速览
  • Applite:如何让Mac软件管理变得像App Store一样简单?
  • MATLAB实现TDOA+AOA混合定位仿真:含坐标转换、三角解算与误差分析
  • 如何快速掌握Calibre豆瓣元数据插件:面向电子书爱好者的完整解决方案
  • 31851个成语结构化数据集:带拼音、释义、古籍出处和现代例句,支持Excel/文本/数据库直接导入
  • 国科安芯推出商业航天级抗辐照半双工RS-485/RS-422收发器 ASC485S2Y
  • 本地钻石回收老店,合扬深耕行业,青岛出价高于同行 - 奢侈品交易观察员
  • 51单片机智能插座全套开发资料:DS18B20测温+DS1302定时+LCD1602显示+Proteus仿真+AD原理图+Keil源码
  • 莲湖区家政公司测评:住家白班保姆、家庭管家与便民服务参考 - 资讯速览
  • 2026年天津必吃海鲜餐厅深度横评:滨江道、赤峰道本地人私藏榜单与避坑指南 - 精选优质企业推荐官
  • laravel的Middleware 的源码解读的庖丁解牛
  • VRM-Addon-for-Blender终极指南:从模型创建到VR应用集成的深度解析
  • 数据结构:双向循环链表的实现
  • 如何在3分钟内为Word安装APA第7版参考文献格式:免费终极指南
  • 2026济南黄金回收门店实测:六家机构专业设备与鉴定流程横向对比 - 薛定谔的梨花猫
  • Wireshark 零基础教程:从安装到首次抓包(进阶学习路线第一期)
  • 银行级机器学习系统:从模型上线到生产稳定的全链路实践
  • Linux命令行管理文件
  • 工业现场踩坑实录:STM32做Modbus主机,如何稳定驱动32个从站?从电路到代码的避坑指南
  • 别再只用图数据库了!实战复盘:如何用AbutionGraph时序图数仓,一站式搞定公安经侦的“资金链”分析难题
  • Matlab小波神经网络实战包:Morlet小波构建+训练测试全流程代码+双数据集
  • 如何让网易云音乐的NCM加密文件在其他设备上播放?一个C解决方案的技术解析
  • FastbootEnhance:告别命令行,用图形化界面解锁Android设备管理新体验
  • 2026最新:宁波除甲醛公司 5 大排名|基于全民票选与真实口碑|高温高湿气候适配性专项测评 - 专注室内空气检测治理
  • scRNA-seq细胞类型自动标注Python工具包(含GPU训练、多阶段验证与全流程脚本)
  • DINOV2算法详解及V3中的改进
  • MATLAB下开箱即用的NIfTI脑影像处理工具包:支持读取、可视化、保存及空间校正
  • Claude Opus 4.8 的 Token 消耗优化指南:少用 15% 步骤的秘诀(Effort Control + Prompt 精简)
  • 项目名称太长,导致隐藏