Javaでnullでない値をチェックする最良の方法は何ですか.
String query ="abcd";
query != null対 !query.equals(null).
どっちがいい?なぜ?
Javaでnullでない値をチェックする最良の方法は何ですか.
String query ="abcd";
query != null対 !query.equals(null).
どっちがいい?なぜ?
あなたの値が実際に_ NPE_ それと同じくらい簡単です。null
これを試してください:
String str = null;
str.equals(null); // will throw `NPE`.
したがって、基本的に、実行したいテスト自体がNullPointerException2番目のケースでトリガーされます。したがって、それは選択の余地がありません。
!str.equals(null)意思
null チェックのポイントは、このコードの参照がstr実際にオブジェクトを参照していることを確認することです。null の場合、 をスローせずに を含むメソッドを呼び出すことはできません。equalsNullPointerException
その!str.equals(null)ため、ヌルチェックが防止することを目的としており、あなたが考えていることをまったく実行しないという非常に問題が発生します。絶対にしないでください。
query != nullオブジェクトが であるかどうかを比較しますnull。query.equals("something")そのオブジェクト内の値を比較します。string == "something". したがって、この場合は を使用しますquery != null。
query != null!query.equals(null)クエリが実際に null の場合に例外をスローする方がよいでしょう。またquery != null読みやすい