Java中,直接使用null.equals()
在Java中,直接使用null.equals()会引发NullPointerException。
原因分析
equals()方法是Object类的默认方法,用于比较两个对象是否相等。当传入null时,由于null代表未指向任何对象的引用,调用其方法会导致空指针异常。
正确操作方式
优先检查是否为null:在调用equals()前,需先判断对象是否为null。例如:
javaCopy Code
if (obj != null && obj.equals(anotherObj)) {
// 执行操作
}
使用StringUtils工具类:Apache Commons的StringUtils提供安全操作,例如isEmpty()或equals()方法可直接处理null值。
示例代码
错误写法:
String str = null;
if (str.equals("test")) {
// 报错:NullPointerException
}
正确写法:
if ("test".equals(str) || str == null) {
// 正确处理null值
}
