文章目录

  • 1. 场景案例
  • 2. 规避自动拆箱引发的空指针的建议
1. 场景案例
package com.gblfy;/*** 自动拆箱引起的空指针问题场景*/
public class Unboxingnpe {private static int add(int x, int y) {return x + y;}private static boolean compare(long x, long y) {return x >= y;}public static void main(String[] args) {//1.变量赋值自动拆箱出现的空指针Long count =null;long _count =count;//2.方法传参时自动拆箱引发的空指针
//        Integer left = null;
//        Integer right = null;
//        System.out.println(add(left, right));//3.用于大小比较的场景
//        Long left=10L;
//        Long right=null;
//        System.out.println(compare(left,right));}
}
2. 规避自动拆箱引发的空指针的建议

1.基本数据类型由于包装器类型,优先考虑使用基本数据类型
2.对于不确定的包装器类型,一定要校验是否是NULL
3.对于值为NULL的包装器类型,赋值为0

自动拆箱引发的空指针_02相关推荐

  1. 自动装箱与拆箱引发的享元设计模式

    2019独角兽企业重金招聘Python工程师标准>>> /*** 自动装箱与拆箱*/ public class Autoboxing {public static void main ...

  2. java自动拆箱时的nullPointException问题解析

    java1.5之后提供的自动装箱和拆箱操作,简化了代码的编写,但是自动拆箱过程中容易引起nullPointExcetion.如果对其拆箱原理不理解将对很定位问题出现的原因. 原因: 例如如下代码: p ...

  3. java陷阱之自动拆箱

    项目中突然报空指针异常 Integer code=null;code=code==null?500:code; 排查发现三元运算符空指针异常,表面上看不出来有什么问题,编译器编译的时候会保证:2边数据 ...

  4. Java进阶之自动拆箱与自动装箱

    序. java基本类型介绍 java中,基本数据类型一共有8种,详细信息如下表: 类型 大小 范围 默认值 byte 8 -128 - 127 0 short 16 -32768 - 32768 0 ...

  5. JAVA高级特性--自动拆箱-装箱,枚举类型

    基本数据类型转换为引用类型对象 一个自动装箱的例子 Integer i=10;相当于 Integer i=new Integer(10); 一个自动拆箱的例子 Integer m=10;int n=m ...

  6. java char的包装对象,Java 从Character和char的区别来学习自动拆箱装箱

    本文结构 1.Character和char 的区别: 2.自动拆箱装箱java 1.Character和char 的区别: Character是类,char基本数据类型.数组 在java中有三个类负责 ...

  7. java 自动装箱自动拆箱_自动装箱和自动拆箱

    自动装箱和自动拆箱 Java 提供了 8 种基本数据类型,每种数据类型都有其对应的包装类型,包装类是面向对象的类,是一种高级的数据类型,可以进行一些比较复杂的操作,它们是引用类型而不再基本类型了. 基 ...

  8. JDK 1.5 新特性——自动拆箱装箱

    1.5版本支持了自动包装和解包操作,对于bool/Boolean,byte/Byte,double/Double,short/Short,int/Integer, long/Long,float/Fl ...

  9. 自动装箱与自动拆箱的一些问题

    今天打算复习一下Java基础,之前学的太快速了,现在暑假,好好把那些细节看一下 复习到自动装箱和自动拆箱的时候,这里有个很有趣的现象 Integer n1 = 100; Integer n2 = 10 ...

最新文章

  1. 三天打工生活终于结束了
  2. 数据中心柴油发电机组功率
  3. 8s 使用本地打包镜像_在Docker环境构建、打包和运行Spring Boot应用
  4. ITK:计算PCA形状模型
  5. html开启页面离线缓存,HTML5 离线缓存
  6. java 设置系统参数_Java如何设置系统参数和运行参数
  7. python 导入自己写的类_python中自己的类不能被导入
  8. 火线精英显示服务器一断,火线精英bug大全解析
  9. matlab判断向量组线性相关性的三种方法
  10. /31位掩码实验演示
  11. php实现单,双向链表,环形链表解决约瑟夫问题
  12. 让部署到服务器上的springboot项目持续运行(nohup)
  13. 2022版全国各地mapinfo格式电子地图及mapinfo二次开发
  14. 基于Python+MySQL的图书销售管理系统 课程论文+项目源码及数据库文件
  15. 华为鸿蒙系统英语报纸_“鸿蒙”系统的英文名叫这个!华为注册的这些名字都该怎么翻译?...
  16. Latex 提示错误Improper alphabetic constant
  17. 如何把录音生成二维码,用微信扫一下就能听?分享语音音频转二维码的方法和技术原理
  18. 常用的JavaScript位操作(Bitwise)
  19. Lync / Skype for Business登录界面UI切换
  20. C++ 提取代码中的函数

热门文章

  1. 一图读懂马云与阿里20年:互联网巨头是如何养成的?
  2. matlab bmp hsi,matlab中RGB与HSI图像转化
  3. myeclipse导入项目报错Target runtime Apache Tomcat v8.0 is not defined
  4. IntelliJ IDEA开发环境应用
  5. CDH6.x Solr7.x 集成 Ik 分词
  6. 在Saas发展的黄金时代里带你理解SaaS设计
  7. 塑云科技基于 KafKa+OTS+MaxCompute 完成物联网系统技术重构
  8. 如何在云上使用confd+ACM管理敏感数据
  9. 官宣!阿里Blink和Flink合并计划出炉
  10. [新品发布]全球首个百万IOPS云盘来了 阿里云推出超高性能云盘ESSD