问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Java 入门:装箱与拆箱

发布网友 发布时间:2024-09-27 01:12

我来回答

1个回答

热心网友 时间:2024-11-05 10:12

引言

在这篇文章中,我们将使用一些示例,来学习 Java 中的装箱与拆箱操作。原始数据类型的处理是不同的,因此引入了包装类,其中有两个组件起着作用,即自动装箱和解箱。

为何需要原始类型与包装类?

Java 是基于面向对象设计的,因此,每创建一次包装类型就会放到堆里,然后通过栈中的地址来找寻堆中的对象。那么像经常使用的 int、double、float 等基础类型,每次都创建为对象会变的效率低下。因此就出现了基本类型,直接将变量值存在栈中。但是基本类型不具有对象性质,当我们使用集合的时候,又可以使用其包装类型。当然,我们每次使用的时候,例如往集合中添加基本类型,Java 会自动装箱为包装类,后面的示例也会演示到。

Java 装箱 - 原始类型到包装类对象

所谓装箱,就是 Java 编译器会自动将原始类型转换为其相应的包装类对象。 示例:

inta=10;//装箱操作Integerb=a;

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

示例 1: 使用 Java 集合时的装箱操作importjava.util.ArrayList;publicclassAutoBoxing{publicstaticvoidmain(String[]args){ArrayList<Integer>list=newArrayList<>(4);//装箱list.add(2022);list.add(82);System.out.println("list=>"+list);}}

输出:

list=>[2022,82]

在上述的示例中,我们创建了一个基于 Integer 类型的集合。因此,集合列表只能容纳 Integer 类型的对象。 注意这一行:

list.add(2022);

这里,我们显然正在传递原始类型的值。然由于自动装箱,原始值被自动转换为整数对象并存储在数组列表中。

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

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

//装箱Integerb=56;//拆箱inta=b;

和自动装箱一样,拆箱也可以用在Java集合中。

示例 2:Java 集合取值拆箱importJava.util.ArrayList;publicclassAutoBoxing{publicstaticvoidmain(String[]args){ArrayList<Integer>list=newArrayList<>(4);//装箱list.add(2022);list.add(82);System.out.println("list=>"+list);//拆箱intc=list.get(0);System.out.println("cval:"+c);}}

输出:

list=>[2022,82]cval:2022

在上面的例子中,请注意这一行:

intc=list.get(0);

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

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
求助:补全成语. _然而止、_然不屈、_然四顾、_然若失、_然而至、_然拒绝、_然无声... 我姑妈(姑妈去世),现奶奶的房产 姑妈的女儿有继承权吗? 丈夫去世遗产应该能怎么分配 《人世间》骆士宾遗产股权归谁所有 为什么说曹珊不应该得罪水自流_百 ... 有谁知我国十大元帅及十大上将? 解放中国的10大元帅是那几个? 对中国有何影响? 中国历史上的十大元帅 为什么中国过去有元帅现在没有了 ...想看中国80年代、90年代热播的电视剧,《渴望》、《蛙女》等,越多... 贴吧ID被永久封禁了怎么解封? 男人和小三睡久了会有感情吗 ...小三和情人有区别吗?分别会投入一种什么样的情感?关系的建立是各取... 三哥什么意思 ...地球运行,当它由近地点向远地点运行时,卫星的动能___,卫星的势能... "人造地球卫星在远地点时势能最大动能为零"这句话对不对? 广西政法管理干部学院教职工队伍 微信号注销了 为什么还能通过手机号或者微信号搜到 广西政法管理干部学院怎么样 《银河帝国1 基地》:危机出现了,路就出现了 书单丨最伟大的科幻小说前10名,你读过几本? 地表水地表水地下水联合运用 谢顿计划概述 《基地》内容简介 当兵日常安全方面的保证书 小学生军训保证书250字 没参加军训被学校开除求帮我写保证书 定窑第一人——陈文增 陈文增主要成就 织金县的经纬度范围是多少?哪里可以查到? Java教程之包装类详解 用水测法计时的民族是 怎么判断自己是不是神经衰弱 遇到别人陷害自己是小三怎么处理 我还是处女 但是 别人诬陷我是小三 应该怎么解决 被人诬陷我是小三还打了我 她犯了什么罪 被人诬赖成小三了该怎么办??这对本人的生活造成了很大的困扰,我该怎... 我在公司上班快八年现在刚买养老保险以前的七年能补吗?我五十岁了。 如何回复对方「来日方长」? ...现在闲置十多亿YXB,想屯点货等涨了在卖赚点小钱,现在不知道该屯点... 挖矿比特币是什么意思? ...心灵就越丑陋。求高人指点此话,我的生活就充满了烦恼。 有什么好用的增高鞋垫? 轻狂3鞋垫有什么用 什么品牌的内增高鞋平价舒适? 苹果6怎么取消锁屏上的音乐 苹果手机为什么锁屏一直显示播放器 为什么我的苹果6在锁屏的情况下会出现这个东西,这些程序后台已经关闭了... 定金与订金哪个不能退 定金与订金哪个不能退? ...听说筷子寓意挺好的,但是送那个感觉没什么分量?