study02:null做equals比较

Posted Ahnappi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了study02:null做equals比较相关的知识,希望对你有一定的参考价值。

经常会遇到判断值是否相等的问题。

比如这样的代码

User  user=userService.findUserById(userId);

if(user.getUserName().equals("lalala")){

......

}

这样写的代码有问题的.

1.User  user=userService.findUserById(userId);

用userService调用方法,查询user对象,有可能为null。

所以需要加上非空判断

User  user=userService.findUserById(userId);

if(null!=user){

if(user.getUserName().equals("lalala")){

......

}

}

其中null!=user和user!=null没有区别,但是习惯上写为null!=user

2.if(user.getUserName().equals("lalala"))

如果user.getUserName为null,就会抛出空指针,所以要写成。

if("lalala".equals(user.getUserName()))

以上是关于study02:null做equals比较的主要内容,如果未能解决你的问题,请参考以下文章

leetcode_1292. Maximum Side Length of a Square with Sum Less than or Equal to Threshold_[二维前缀和](代码片段

理解 equals(),hashcode()和 ==

如何重构这个 Java 代码片段

java中equals和equalsignorecase的区别

java中equals和equalsignorecase的区别

面试题