Ofe*_*ial 0 java string nullpointerexception
为什么当我尝试执行以下操作时:(在java)
if (reason.equals("time")) { // my code }
Run Code Online (Sandbox Code Playgroud)
IDE向我显示此警告消息:(?)
方法调用'reason.equals("time")'可能会产生'java.lang.NullPointerException'
我找不到这条警告信息的抽象解释.
如果reason是null,你基本上会有null.equals("time")一个导致a NullPointerException.要解决这个问题,只需将两者交换:"time".equals(reason);
这是你的IDE很可爱.如果reason是null,那么你很可能得到一个java.lang.NullPointerException.
一个常见的解决方法是使用java.util.Objects.equals(reason, "time").该功能将为您执行任何null检查.
虽然,对于这个特殊情况,酷猫,知道文字肯定不是null,将重写为尤达表达
"time".equals(reason)
参考:https://en.wikipedia.org/wiki/Yoda_conditions
| 归档时间: |
|
| 查看次数: |
98 次 |
| 最近记录: |