CodeGym /Java Course /モジュール 3 /Apache Commons の ObjectUtils クラス

Apache Commons の ObjectUtils クラス

モジュール 3
レベル 20 , レッスン 3
使用可能

ObjectUtils クラスの概要

方法:

allNotNull(オブジェクト...値) すべてのオブジェクトが null でないことを確認します
allNull(オブジェクト...値) すべてのオブジェクトが null であることを確認します
anyNotNull(オブジェクト...値) 少なくとも 1 つのオブジェクトが null でないことを確認します
anyNull(オブジェクト...値) 少なくとも 1 つのオブジェクトが null であることを確認します
クローン(T オブジェクト) オブジェクトのクローンを作成します
cloneIfPossible(T obj) オブジェクトのクローンを作成するか、オリジナルを返します
比較(T c1, T c2) オブジェクトを比較します
defaultIfNull(T オブジェクト, T デフォルト値) オブジェクトが null の場合はデフォルトのオブジェクトを返します
等しい(オブジェクト object1, オブジェクト object2) 2 つのオブジェクトを比較します
notEqual(オブジェクト object1, オブジェクト object2) 2 つのオブジェクトが等しくないかどうかを確認する
firstNonNull(T...値) null ではない最初のオブジェクトを返します。
getFirstNonNull(サプライヤー ... サプライヤー) null ではない最初のオブジェクトを返します。
getIfNull(T オブジェクト, サプ​​ライヤー デフォルトのサプライヤー) 指定されたオブジェクトが null でない場合はそれを返し、それ以外の場合は渡された Supplier の Supplier.get() 値を返します。
ハッシュコード(obj) オブジェクトのハッシュコードを計算します
hashCodeMulti(オブジェクト...オブジェクト) オブジェクトのグループの hashCode を計算します
isEmpty(オブジェクトオブジェクト) オブジェクトが空かnullかどうかを確認します
isNotEmpty(オブジェクトオブジェクト) オブジェクトが空または null でないかどうかを確認します
requireNonEmpty(T obj) オブジェクトが null でないかどうかを確認し、それ以外の場合は例外をスローします
requireNonEmpty(T obj, 文字列メッセージ) オブジェクトが null でないかどうかを確認し、それ以外の場合は例外をスローします
identityToString(Object オブジェクト) オブジェクトの文字列を返します
toString(オブジェクトobj) オブジェクトの文字列を返します
toString(オブジェクト obj, 文字列 nullStr) オブジェクトの文字列を返します
toString(オブジェクト obj, サプライヤー サプライヤー) オブジェクトの文字列を返します

各グループから 1 つの方法を見てみましょう。非常に便利で不要なコードを避けることができるので、ぜひ頻繁に使用してください。

ObjectUtils.compare()

このメソッドは、コンパレータと同じ方法でオブジェクトを比較します (「より大きい」、「以下」、または「等しい」)。オブジェクトを並べ替えるのに使用できます。

メソッドのシグネチャは次のようになります。

public static <T extends Comparable<? super T>> int compare(final T c1, final T c2);
public static <T extends Comparable<? super T>> int compare(final T c1, final T c2, final boolean nullGreater);

3 番目のパラメータ ( nullGreater ) がtrueの場合、null は常にnull以外よりも大きいとみなされます。このメソッドは、c1> c2 の場合は正を返し、c1<c2 の場合は負を返し、c1 == c2 の場合は 0 を返します。

例:

String firstValue = "codeGym";
String secondValue = "codeGym";
System.out.print(ObjectUtils.compare(firstValue, secondValue));
System.out.println();

firstValue = "codeGym";
secondValue = null;
System.out.print(ObjectUtils.compare(firstValue, secondValue));
System.out.println();

firstValue = "";
secondValue = "codeGym";
System.out.print(ObjectUtils.compare(firstValue, secondValue));
System.out.println();

プログラムは結果を表示します。

0
1
-8

ObjectUtils.isNotEmpty()

isNotEmpty()メソッドは、渡されたオブジェクトが空でもnullでもないことをチェックします。

メソッドのシグネチャ:

public static boolean isNotEmpty(final Object object)

例:

List<String> values = new ArrayList<>();
System.out.println(ObjectUtils.isNotEmpty(values));

values.add("codeGym");
System.out.println(ObjectUtils.isNotEmpty(values));

values = null;
System.out.println(ObjectUtils.isNotEmpty(values));

結果が画面に表示されます。

false
true
false

java.util.Objects

Java 開発者はObjectUtilsのアイデアを非常に気に入ったので、JDK 7 で独自のアイデアを追加しました。

isNull(オブジェクトオブジェクト) オブジェクトが null かどうかを確認します
nonNull(オブジェクトオブジェクト) オブジェクトが null でないかどうかを確認します
toString(オブジェクト) オブジェクトを文字列に変換します
toString(Objecto, String nullDefault) オブジェクトを文字列に変換します
ブール値等しい(オブジェクト a,オブジェクト b) オブジェクトを比較します
boolean deepEquals(オブジェクト a,オブジェクト b) オブジェクトを比較します
T requireNonNull(T obj) 渡されたパラメータがnullでないかどうかを確認します
T requireNonNull(T obj,String メッセージ) 渡されたパラメータがnullでないかどうかを確認します
int hashCode(オブジェクト o) オブジェクトのハッシュコードを計算します
int ハッシュ(オブジェクト...値) オブジェクトのグループの hashCode を計算します
int Compare(T a,T b,コンパレータ c) オブジェクトを比較します

java.util.ObjectsクラスはJDK の一部であるため、コード内で使用することをお勧めします。

他の人のコードを読むと、 ObjectUtilsのオプションに遭遇する可能性が高く、これはオープンソースで頻繁に発生することに注意することが重要です。ここで、それらがどのように異なるかを確認できます

コメント
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION