Java知识点 —— java.lang.NullPointerException 异常

java.lang.NullPointerException 异常

一、异常出现的几种原因

  1. 显式调用一个当前未赋值对象的方法
String str = null;
if(str.equals(“Test”)){
//这里的代码将不会被触发,因为会抛出java.lang.NullPointerException异常。
}

总结:字符串equals时将字符串常量放前面,避免空指针

  1. 未初始化问题(包括字符串、接口对象、只声明未实例化的class……)
Map map // 会报错
Map map = new Map(); //不会报错
  1. 当一个对象的值为空时,没有判断为空的情况

包装类型转换为基本类型时可能出现
Integer i = null; int num = i;

在这里插入图片描述

  1. 优先使用String.valueOf()方法代替toString()

当程序代码需要对象的字符串表示形式时,请避免使用该对象的toString方法。
如果对象的引用等于null,NullPointerException则会抛出,使用静态String.valueOf方法,该方法不会抛出任何异常并打印"null"。

  1. 返回null时,方法的返回值不要定义成为一般的类型,用数组

二、避免问题的方法

在这里插入图片描述

参考文章

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值