装箱和拆箱---JAVA基础篇
2023-09-14 09:13:34 时间
装箱
定义:
把基本数据类型转换为对应的包装类型
代码演示:
//装箱
Integer i=Integer.valueOf(100);
//自动装箱
Integer ii=100;//等价于:Integer.valueof(100);
拆箱
定义:
把包装类型转换为对应的基本数据类型
代码演示:
//拆箱
ii=ii.intValue()+200;
//自动拆箱
ii+=200;
注意
使用引用类型的变量前,最好先做不为null的判断
代码演示:
Integer iii=null;
iii+=200;
报错原因:
这里iii是空引用,空的引用不指向任何对象,既然没有对象,也就无法调用方法,无法调用intValue()方法,也就无法进行拆箱,也就无法与整数相加
正确代码:
Integer iii=100;
if(iii!=null)
iii+=200;
System.out.println(iii);
总结
在使用包装类类型的时候,如果做操作,最好先判断是否为null
建议只要是对象,在使用前就必须进行不为null的判断
相关文章
- Java多线程详解_java支持多线程
- java除零异常_JAVA异常处理
- java list去重_JAVA基础-List去重的6种方式[通俗易懂]
- protostuff java_Protostuff一键序列化工具、Protobuf JAVA实现
- Contest1620 – 2020-2021-2学期《Java Web 系统开发》:java基础:字符串
- java控制台输入数组_Java控制台输入数组并逆序输出的方法实例
- java 汉字乱码_Java中文乱码问题
- 设计模式 – 结构型设计模式 – 适配器模式(Java)
- 零基础学Java(6)控制流程「建议收藏」
- 大数据必学Java基础(六十五):阻塞队列介绍
- Java遍历json_java处理json数据
- Java 8 的 java.util.function.* POJO 的反射新方法
- 微信支撑10亿用户背后核心技术:亿级流量Java并发与网络编程实战
- java url加密_Java实现url加密处理的方法示例
- JAVA为啥要用stream流处理_java哪个部分最难学
- Java学习笔记之九java二维数组及其多维数组的内存应用拓展延伸详解编程语言
- Java中Queue的使用详解编程语言
- 代码Linux下编写Java代码的指南(linux编写java)
- Java实现Redis分布式锁(java实现redis锁)
- 深入认识Java面试与MySQL及其思考(java面试mysql)
- 构建基于Java和Oracle的强大技术栈(java架构oracle)