これは悪い習慣ですか、それともパフォーマンスに影響がありますか?これは、xがnullに等しくないことを確認するためです
if( !(x == null) ){
System.out.println("x is not a null value");
}
これは悪い習慣ですか、それともパフォーマンスに影響がありますか?これは、xがnullに等しくないことを確認するためです
if( !(x == null) ){
System.out.println("x is not a null value");
}
これを行う通常の方法は次のとおりです。
if(x != null){
System.out.println("x is not a null value");
}
値がnullでないかどうかを確認しても問題はありません。
理由を明確にせずに行うのは悪い習慣です。あなたの例では、なぜあなたがチェックをしているのかは明らかではありません。一般的な例は次のようなものです
if (s == null || s.isEmpty()) // if s empty or not set.
また
if (s != null && s.length() > 0)
通常、これは必要なときに行います。その場合、パフォーマンスは重要ではありません。
通常、あなたは書くでしょう
if(x != null)
以上
if (x == null) {
// handle null, assuming this is not empty.
} else {
// handle not null
}
コンパイラを信頼して最適化できるため、パフォーマンス面では関連性が低い可能性があります。
それはただのスタイルの問題です。スタイルは常に主観的ですが、私if (x != null)
はより簡潔で読みやすいと思います。
if(x != null) is recommended and easy to read "X is not equal to null"
if(!(x == null))は「Xがnullに等しくない」と読み取ることができません
ここに追加するだけのベストプラクティスは、
if(null!= x){
System.out.println( "xはnullではありません");
}
if(x!= null){
System.out.println( "x is not null"); の代わりに
}
私はJavaでとにかく動作することを知っていますが、これはあなたが誤ってxにnullを割り当てるかもしれないc++のような他の言語であなたを救うでしょう、例えば
if(x = null){
printf( "xはnullではありません");
}
if( !(x == null) ){
System.out.println("x is not a null value");
}
条件がブール値のtrueまたはfalseを返す場合も同様です。したがって、上記の記述は何の影響も及ぼしません。上記のコードによると、あなたが書いた条件は「真でない場合」です。それなら何かをしてください!そして他の人if(x != null)
がより良い方法で混乱の少ないコードを書くことを提案しているように;)