ObjectUtils sınıfına giriş

Yöntemler:

allNotNull(Nesne...değerler) Tüm nesnelerin boş olmadığını kontrol eder
allNull(Nesne...değerler) Tüm nesnelerin boş olduğunu kontrol eder
anyNotNull(Nesne...değerler) En az bir nesnenin boş olmadığını kontrol eder
anyNull(Nesne... değerleri) En az bir nesnenin boş olduğunu kontrol eder
klon(T nesnesi) Bir nesneyi klonlar
cloneIfPossible(T nesnesi) Bir nesneyi klonlar veya orijinali döndürür
karşılaştır(T c1, T c2) Nesneleri karşılaştırır
defaultIfNull(T nesnesi, T defaultValue) Nesne null ise varsayılan nesneyi döndürür
eşittir(Nesne nesne1, Nesne nesne2) İki nesneyi karşılaştırır
notEqual(Nesne nesne1, Nesne nesne2) İki nesnenin eşit olup olmadığını kontrol edin
firstNonNull(T...değerler) Null olmayan ilk nesneyi döndürür
getFirstNonNull(Tedarikçi ... tedarikçiler) Null olmayan ilk nesneyi döndürür
getIfNull(T nesnesi, Tedarikçi varsayılanTedarikçi) Belirtilen nesneyi null değilse döndürür, aksi takdirde iletilen Supplier'ın Supplier.get() değerini döndürür
hashCode(nesne) Bir nesne için hashCode'u hesaplar
hashCodeMulti(Nesne... nesneleri) Bir grup nesne için hashCode'u hesaplar
isEmpty(Nesne nesnesi) Bir nesnenin boş veya boş olup olmadığını kontrol eder
isNotEmpty(Nesne nesnesi) Bir nesnenin boş veya boş olup olmadığını kontrol eder
zorunluBoş Olmayan(T nesnesi) Bir nesnenin boş olup olmadığını kontrol eder, aksi takdirde bir istisna atar
requireNonEmpty(T nesnesi, Dize mesajı) Bir nesnenin boş olup olmadığını kontrol eder, aksi takdirde bir istisna atar
kimlikToString(Nesne nesnesi) Bir nesne için bir dize döndürür
toString(Nesne nesnesi) Bir nesne için bir dize döndürür
toString(Nesne nesnesi, String nullStr) Bir nesne için bir dize döndürür
toString(Nesne nesnesi, Tedarikçi Tedarikçi) Bir nesne için bir dize döndürür

Her gruptan bir yönteme bakalım. Umarım bunları sık sık kullanırsınız çünkü çok uygundurlar ve gereksiz kodlardan kaçınmanıza izin verirler.

ObjectUtils.compare()

Yöntem, nesneleri karşılaştırıcı ile aynı şekilde karşılaştırır: büyüktür, küçüktür veya eşittir. Nesneleri sıralamak için kullanılabilir.

Yöntem imzası şöyle görünür:

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);

Üçüncü parametre ( nullGreater ) true ise , null her zaman non- null'dan büyük kabul edilir . Yöntem, c1> c2 ise pozitif, c1<c2 ise negatif ve c1 == c2 ise 0 döndürür.

Örnek:

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();

Program sonucu gösterecektir:

0
1
-8

ObjectUtils.isNotEmpty()

isNotEmpty() yöntemi, kendisine iletilen nesnenin ne boş ne de boş olup olmadığını kontrol eder .

Yöntem imzası:

public static boolean isNotEmpty(final Object object)

Örnek:

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));

Sonuç ekranda görüntülenecektir:

false
true
false

java.util.Objects

Java geliştiricileri ObjectUtils fikrini gerçekten beğendiler , bu nedenle JDK 7'de kendi fikirlerini eklediler:

isNull(Nesne nesnesi) Bir nesnenin boş olup olmadığını kontrol eder
nonNull(Nesne nesnesi) Bir nesnenin null olup olmadığını kontrol eder
toString(Nesne) Bir nesneyi bir dizeye dönüştürür
toString(Objecto, String nullDefault) Bir nesneyi bir dizeye dönüştürür
boole eşittir(Nesne a,Nesne b) Nesneleri karşılaştırır
boolean deepEquals(Nesne a,Nesne b) Nesneleri karşılaştırır
T gerektirirNonNull(T nesnesi) Geçirilen parametrenin boş olup olmadığını kontrol eder
T requireNonNull(T nesnesi,Dize mesajı) Geçirilen parametrenin boş olup olmadığını kontrol eder
int hashCode(Nesne o) Bir nesne için hashCode'u hesaplar
int hash(Nesne...değerler) Bir grup nesne için hashCode'u hesaplar
int karşılaştırma(T a,T b,Karşılaştırıcı c) Nesneleri karşılaştırır

Java.util.Objects sınıfı, JDK'nın bir parçası olduğu için , onu kodunuzda kullanmanız önerilir.

Başka birinin kodunu okuduğunuzda, büyük olasılıkla ObjectUtils'ten seçeneklerle karşılaşacağınızı unutmamak önemlidir , bu genellikle açık kaynakta olur. Burada nasıl farklı olduklarını görebilirsiniz .