問題タブ [null-check]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
1654 参照

java - オブジェクト(または関数の結果)がnullの場合、呼び出し関数はデフォルト値を返す必要があります

次のコードを再利用可能な関数でラップすることは可能ですか?

編集: これは単なる例です。すべての再帰の深さに対して有効なソリューションが必要です

私が欲しいのは、次のコードが生成されることです:

のようなものを呼び出すことによって

2番目のコードブロックは単なるアイデアです。どのように見えるかは気にしません。必要に応じて、nullより深い関数を呼び出す前にすべてのチェックを回避できることだけが必要です...

インジェクションはおそらくこれを行うことができますが、他に/より簡単な解決策はありませんか? 注射はまだ見たことがありません...

EDIT2: 別の言語の例: http://groovy.codehaus.org/Operators#Operators-SafeNavigationOperator

0 投票する
4 に答える
5303 参照

c# - == 演算子の複数のオーバーライドを含むクラスの null チェックはあいまいです

== 演算子の 2 つのオーバーライドを持つクラスがあり、このクラスの他のインスタンスと比較し、文字列のインスタンスと比較します。

ただし、このクラスを null と比較しようとすると、次のようになります。

次のエラーが表示されます。

このクラスのインスタンスを null チェックできるように、== オーバーライドをどのように定義すればよいですか?

0 投票する
2 に答える
2353 参照

java - Java 1.7 で TreeSet の最初の add 呼び出しで compareTo がトリガーされる

私は要素を持つ TreeSet を持っています。

http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html#compareTo%28T%29

[ クラス C の自然順序付けは、e1.compareTo(e2) == 0 がクラス C のすべての e1 および e2 に対して e1.equals(e2) と同じブール値を持つ場合にのみ、equals と一致すると言われます。 null はどのクラスのインスタンスでもなく、e.equals(null) が false を返す場合でも、e.compareTo(null) は NullPointerException をスローする必要があります。 ]

要素クラスには null セーフでない compareTo メソッドがあります

Java 1.5 で動作する次のコードがありますが、Java 1.7 では動作しません。

  • Null Safe の compareTo を実行する必要があるのはなぜですか? そして、なぜjavadocはそれを言うのですか?
  • Java 1.7では最初の追加呼び出しでcompareToメソッドがトリガーされたのに、1.5ではトリガーされなかったのはなぜですか?

compareTo が null セーフである必要があるかどうか、または問題が無効なデータを含む新しいオブジェクトを構築することであるかどうかを理解したいです。

これはスタックトレースです:

0 投票する
1 に答える
242 参照

java - チェーン フィルタリングの if null チェックのリファクタリングと削除

私はデータベース エントリに対していくつかのフィルタリングを行っていますが、やや醜いコードになってしまいました。これは好ましくありません。

チェーンMyFilterResolverFactoryを構築して返すクラスがあります。MyFilterResolver

そして、それの醜い、具体的な実装:

MyFilterクラスは、ゲッター/セッターのみを持つ通常の POJO です。

これらのチェックを取り除きたいのif (something != null)ですが、方法がわかりません。

0 投票する
6 に答える
301 参照

java - Java: null のメソッド引数を検証するための最良の方法は何ですか?

メソッドの呼び出し中に null の引数を検証する最良の方法は何ですか?

1) メソッド呼び出しを行う前

2) 引数を受け取ったら、メソッド内

または両方

0 投票する
5 に答える
2017 参照

java - オブジェクトの Java null チェック

わかりました、それは簡単な質問です。問題はありませんが、確認したいだけです。このようなことをすれば正しいですか?

私はこれを行うことができますか?同じ行でnullチェックとオブジェクトアクセス? これは正しいです?または、次のような null チェック ステートメントで内部ステートメントを作成する必要があります。

imo、最初のステートメントは NPE をスローしませんでしたが、専門家からのフィードバックが必要でした...

一般的に私の質問は、&& を含む if ステートメントで、最初のブール値が false の場合、JVM は if ステートメントの実行を停止するか、それともすべてをチェックするかということです。

0 投票する
8 に答える
109009 参照

java - メソッドの Java オブジェクト Null チェック

私は本[i]のこの式でヌルチェックを作成する必要があります.私はヌルチェックに精通しておらず、プログラミングに非常に慣れていないため、これを行う方法が完全にはわかりません. どんな助けでも大歓迎です!