は、私は複数のフィールドを持つComplexObjectを持っていると私はこれを言いたい:フィールドx
が両方に存在するGuavaのComparisonChainを使用してnullフィールドを特別な方法で処理できますか?
- 場合、比較・チェーン内の次の
compare
に移動します。 - 両方がnullの場合は、比較チェーンの次の
compare
に移動します。 - 1がnullであり、他は、最後のヌルを入れていない場合
限り、私は
.compare(c1.getX(), c2.getX(), Ordering.arbitrary().nullsLast())
ます
を言うことができるようにするので、私は、これを実行するかどうかはわかりません- オブジェクトが両方とも存在し、等しい場合は等しいと見なします。
- オブジェクトが両方ともnullの場合、等しいとみなされます。
グアバのComparisonChain
またはOrdering
クラスを使用して、私が望むことを達成できる方法はありますか?あるいは、この問題を解決するための良い方法がありますか?
各フィールドのヌルネスのみを気にするかどうかは気になるのですか? –
@EricJablowはい。しかし、より具体的には、まずそれを気にしてから、私は他のことに気をつけます。 EG:次の '.compare'では、' x'の 'name'フィールドに基づいて比較するかもしれません。 –