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

西安的商城网站建设全球网站访问量排名

西安的商城网站建设,全球网站访问量排名,深圳做网站最好,专业网站设计制作费用目录 碎碎念: 如下这行报NPE: 排查过程: 解解方案: 小结: 空指针出现的几种情况: 如何从根源避免空指针: 赋值时自动拆箱出现空指针: 1、变量赋值自动拆箱出现的空指针 2、…

目录

碎碎念:

如下这行报NPE:

排查过程:

解解方案:

小结:

空指针出现的几种情况:

如何从根源避免空指针:

赋值时自动拆箱出现空指针:

1、变量赋值自动拆箱出现的空指针

2、方法传参时自动拆箱引起空指针异常

规避指南:

valueOf()和toString():

心得:

你以为这结束了???肯定不是啊!就在刚刚的截图里面,如果眼睛尖的话,应该也能看出可能存在空指针风险的地方!

使用Optional表达式!

综上

碎碎念:

你知道的,对于初学者或者不是初学者,NPE都是挺让人头疼的问题,在此记录一次NPE问题的排查过程,用来当做耻辱柱,看看是不是总会踩到一个坑里面

如下这行报NPE:

排查过程:

  • 你就得思考,为什么获取的时候会报错NPE,因为空对象不能获取东西,所以自然要想到是不是上面在对象创建的时候就是空的;
  • 然后就能看到,这个Pair是由两个值拼接而成,其中一个是查询的,所以很合理的猜想,是不是这个查询的值没查到,是null呢?

解解方案:

  • 在查询的值外面加上nullToEmpty方法;
  • 继续思考,是哪里不能为空呢?
  • 先看是不是Pair相关的不能为空;
    • 由上面的分析可以推断出,Pair的右值可能为空,因为可能确实没查到,点进去getRight,看到这注释写的是可以为空;
  • 再看是不是外面包着的Collectors.toMap不接受值为空:
  • 点进去:

小结:

虽然知道查询值时有可能因为查不到而返回空,这个时候,为了防止空指针异常就需要进行处理;

空指针出现的几种情况:

1、调用了空对象的实例方法

2、访问了空对象的属性

3、当数组是一个空对象时,取它的长度

4、方法的返回值是 null, 调用方直接去使用

如何从根源避免空指针:

1、使用之前一定要初始化,或检查是否初始化;

2、尽量避免在函数中返回 NULL, 或给出详细的注释

3、外部传值,除非有明细的说明,否则,一定要判断是否为 NULL

赋值时自动拆箱出现空指针:

1、变量赋值自动拆箱出现的空指针

Long i = null;

//变量赋值自动拆箱出现的空指针

long j = i;

Long 自动拆箱为 long 实质是调用了 longValue 方法,由于以上的 Long 类型变量值为 null,自动拆箱就会报 NPE

2、方法传参时自动拆箱引起空指针异常

public static int add(int x, int y) {

    return x + y;

}

public static void main(String[] args) {

    Integer left = null;

    Integer right = null;

    //方法传参时自动拆箱引起空指针异常

    System.out.println(add(left, right));

}

以上自动拆箱报 NPE,原因在于装箱的值为 null,调用 null 的任何 方法都会报错。

规避指南:

  • 基本数据类型优于包装器类型,优先考虑使用基本类型;
  • 对于不确定的包装器类型,一定要校验是否为 NULL;
  • 基本数据类型比包装器类型更加节省时间与空间;

valueOf()和toString():

  • 调用null对象的toString()会抛出空指针异常,使用valueOf()可以获得相同的值,传递一个 null 给 valueOf() 将会返回null。尤其是在那些包装类,像Integer、Float、Double和BigDecimal。

心得:

  • 就是代码写得少啊,不然这错误都不应该出现,所以就只能多写代码呗;

你以为这结束了???肯定不是啊!就在刚刚的截图里面,如果眼睛尖的话,应该也能看出可能存在空指针风险的地方!

同样是查询缓存,所以很可能也查不到想要的东西:

并且,写代码不要抱有侥幸心理,墨菲定律……

使用Optional表达式!

改成如下形式即可:

综上:

多写代码……多思考,有问题可以先问ChatGPT!

🤔希望一些顺利,最近感觉有点@#¥%……&*()

本卦:萃。亨,王假有庙。利见大人,亨,利贞。用大牲吉。利有攸往。   

变卦:噬嗑。亨。利用狱。   

http://www.khdw.cn/news/15572.html

相关文章:

  • 高性能网站建设 下载宁德市属于哪个省份
  • 网站建设先进个人谷歌paypal官网下载
  • 怎么做离线网站全国疫情最新情况最新消息今天
  • 办办网登陆班级优化大师免费下载学生版
  • 改动网站标题百度扫一扫识别图片
  • 网站建设的发展前景专业推广公司
  • 北京微网站建设设计服务商外贸推广引流
  • 日本做国际外贸常用的网站域名备案查询站长工具
  • 网站中嵌入地图千锋教育培训多少钱
  • 做系统下载网站建设广东seo加盟
  • 安卓app免费下载seo岗位有哪些
  • 百度的网站网址品牌营销包括哪些内容
  • 试卷网站在线做响应式模版移动优化
  • 网站开发后台做些什么一级消防工程师考试
  • 软件开发用什么工具seo优化专员工作内容
  • seo网站怎么建设石家庄新闻网
  • 网站开发广东企业管理培训视频免费
  • vs做网站添加背景指数是什么意思
  • 登录邮箱百度关键词seo公司
  • 南昌网站设计公司seo优化实训报告
  • html手机网站怎么做网站推广的方法有哪些?
  • 定制网站建设简介新闻热点事件
  • 易语言网站批量注册怎么做正规软件开发培训学校
  • 动态网站建设的论文谷歌seo搜索引擎优化
  • 网页制作工具常见的有java学seo建网站
  • 钓鱼网站代做公司seo是什么级别
  • 推广赚钱的平台有哪些廊坊seo排名公司
  • 东营市做网站优化电商网站链接买卖
  • 申请完域名如何建设网站关联词有哪些类型
  • 怎么查看网站有没有做竞价哪有网页设计公司