前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >装箱和拆箱---JAVA基础篇

装箱和拆箱---JAVA基础篇

作者头像
大忽悠爱学习
发布于 2021-11-15 03:18:18
发布于 2021-11-15 03:18:18
26800
代码可运行
举报
文章被收录于专栏:c++与qt学习c++与qt学习
运行总次数:0
代码可运行

装箱和拆箱


装箱

定义:

把基本数据类型转换为对应的包装类型

代码演示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
        //装箱
        Integer i=Integer.valueOf(100);
        //自动装箱
        Integer ii=100;//等价于:Integer.valueof(100);

拆箱

定义:

把包装类型转换为对应的基本数据类型

代码演示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
        //拆箱
        ii=ii.intValue()+200;
        //自动拆箱
        ii+=200;

注意

使用引用类型的变量前,最好先做不为null的判断

代码演示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
        Integer iii=null;
        iii+=200;

报错原因:

这里iii是空引用,空的引用不指向任何对象,既然没有对象,也就无法调用方法,无法调用intValue()方法,也就无法进行拆箱,也就无法与整数相加

正确代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
   Integer iii=100;
        if(iii!=null)
        iii+=200;
        System.out.println(iii);

总结

在使用包装类类型的时候,如果做操作,最好先判断是否为null

建议只要是对象,在使用前就必须进行不为null的判断

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/06/09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
自动拆箱与装箱
本专栏是自己学Java的旅途,纯手敲的代码,自己跟着黑马课程学习的,并加入一些自己的理解,对代码和笔记 进行适当修改。希望能对大家能有所帮助,同时也是请大家对我进行监督,对我写的代码进行建议,互相学习。
学编程的小程
2023/10/11
2360
自动拆箱与装箱
如何理解Java中的自动拆箱和自动装箱?
回到家后小伟赶紧查资料,我透,这不就是问基本类型跟封装类型吗,面试官整啥名词呢...
niceyoo
2020/05/28
1.4K0
Java中的自动拆装箱、装箱缓存
Java 是一种面向对象的编程语言,Java 中的类把方法与数据类型连接在一起,构成了自包含式的处理单元。但在 Java 中不能定义基本类型对象,为了能将基本类型视为对象处理,并能连接相关方法,Java 为每个基本数据类型都提供了包装类,如 int 型数值的包装类 Integer,boolean 型数值的包装类 Boolean 等。这样便可以把这些基本类型转换为对象来处理了。
用户7886150
2020/12/10
5690
java基础提升篇:深入剖析Java中的装箱和拆箱
一.什么是装箱?什么是拆箱? 我们知道 Java为每种基本数据类型都提供了对应的包装器类型,至于为什么会为每种基本数据类型提供包装器类型在此不进行阐述,有兴趣的朋友可以查阅相关资料。在Java SE5之前,如果要生成一个数值为10的Integer对象,必须这样进行: 1Integer i = new Integer(10); 而在从Java SE5开始就提供了自动装箱的特性,如果要生成一个数值为10的Integer对象,只需要这样就可以了: 1Integer i = 10; 这个过程中会自动根据数值创建对
好好学java
2018/07/02
3610
深入理解java中的自动装箱与拆箱[通俗易懂]
手动装箱是通过valueOf完成的,大家都知道 = 右边值赋给左边,3是一个int类型的,赋给左边就变成了Integer包装类。
全栈程序员站长
2022/07/06
6550
Java 自动拆箱装箱原理
执行代码时系统为我们执行了 Integer total = Integer.valueOf(99);
王小明_HIT
2019/12/18
7150
深入剖析Java中的装箱和拆箱
深入剖析Java中的装箱和拆箱   自动装箱和拆箱问题是Java中一个老生常谈的问题了,今天我们就来一些看一下装箱和拆箱中的若干问题。本文先讲述装箱和拆箱最基本的东西,再来看一下面试笔试中经常遇到的与装箱、拆箱相关的问题。   以下是本文的目录大纲:   一.什么是装箱?什么是拆箱?   二.装箱和拆箱是如何实现的   三.面试中相关的问题   若有不正之处,请谅解和批评指正,不胜感激。   请尊重作者劳动成果,转载请标明原文链接: https://cloud.tencent.com/developer/a
Ryan-Miao
2018/03/13
8430
深入剖析Java中的装箱和拆箱
Java 中为什么设计了包装类
在 Java 中,万物皆对象,所有的操作都要求用对象的形式进行描述。但是 Java 中除了对象(引用类型)还有八大基本类型,它们不是对象。那么,为了把基本类型转换成对象,最简单的做法就是「将基本类型作为一个类的属性保存起来」,也就是把基本数据类型包装一下,这也就是包装类的由来。
飞天小牛肉
2021/03/18
1.3K0
Java 中为什么设计了包装类
Java包装类,基本的装箱与拆箱
将原始类型和包装类分开以保持简单。当需要一个适合像面向对象编程的类型时就需要包装类。当希望数据类型变得简单时就使用原始类型。
JanYork_简昀
2022/03/31
5150
Java包装类,基本的装箱与拆箱
Java的装箱和拆箱,你掌握到了第几层?
自动装箱和拆箱问题是Java中一个老生常谈的问题了,今天我们就来一些看一下装箱和拆箱中的若干问题。本文先讲述装箱和拆箱最基本的东西,再来看一下面试笔试中经常遇到的与装箱、拆箱相关的问题。
Bug开发工程师
2018/07/23
4280
Java的装箱和拆箱,你掌握到了第几层?
详解 Java 中的自动装箱与拆箱
原文链接:https://www.cnblogs.com/wang-yaz/p/8516151.html
cxuan
2020/12/21
7720
详解 Java 中的自动装箱与拆箱
【Java 基础篇】Java 自动装箱与拆箱:优雅处理基本数据类型与包装类的转换
在 Java 编程中,自动装箱(Autoboxing)和自动拆箱(Unboxing)是两个重要的概念。它们使得基本数据类型与其对应的包装类之间的转换更加方便,同时也提高了代码的可读性和可维护性。本篇博客将深入探讨自动装箱和拆箱的概念、用法以及为什么它们对 Java 程序员如此重要。
繁依Fanyi
2023/10/12
8330
【Java 基础篇】Java 自动装箱与拆箱:优雅处理基本数据类型与包装类的转换
【愚公系列】2022年01月 Java教学课程 40-包装类
i += 200; // i = i + 200; i + 200 自动拆箱;i = i + 200; 是自动装箱
愚公搬代码
2022/01/04
2460
【愚公系列】2022年01月 Java教学课程 40-包装类
包装类应用
比较时会先在对象缓存区查找-128到127的值,有就会直接用,没有会通过new的方式去构造一个
Breeze.
2022/04/23
4550
包装类应用
夯实Java基础系列2:Java基本数据类型,以及自动拆装箱里隐藏的秘密
本系列文章将整理到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看
程序员黄小斜
2019/09/25
3.5K0
Java包装类与自动拆箱装箱
Java 中的基本数据类型(如 int、char、boolean 等)是不具备面向对象特性的,不能直接参与面向对象的操作。为了解决这个问题,Java 提供了对应的包装类来将基本数据类型转换为对象。
程序员朱永胜
2023/09/28
2810
从一个 NullPointerException 探究 Java 的自动装箱拆箱机制
前天遇到了一个 NullPointerException,触发的代码类似下面这样:
mzlogin
2020/04/16
5240
从一个 NullPointerException 探究 Java 的自动装箱拆箱机制
前天遇到了一个 NullPointerException,触发的代码类似下面这样:
零式的天空
2022/03/28
4580
一篇文章讲清楚Java基本数据类型,常量池,以及自动拆装箱的秘密
Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。
Java技术江湖
2019/09/24
6.3K0
一篇文章讲清楚Java基本数据类型,常量池,以及自动拆装箱的秘密
深入浅出 Java 中的包装类
前阵子,我们分享了《Java中的基本数据类型转换》这篇文章,对许多粉丝还是有带来帮助的,今天讲一下 Java 包装类的的由来,及自动装箱、拆箱的概念和原理。
Java技术栈
2019/07/12
7460
深入浅出 Java 中的包装类
推荐阅读
相关推荐
自动拆箱与装箱
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文