Introduktion till klassen ObjectUtils
Metoder:
allNotNull(Objekt...värden) | Kontrollerar att alla objekt inte är null |
allNull(Objekt...värden) | Kontrollerar att alla objekt är null |
anyNotNull(Objekt...värden) | Kontrollerar att minst ett objekt inte är null |
anyNull(Objekt... värden) | Kontrollerar att minst ett objekt är null |
klon (T obj) | Klonar ett objekt |
cloneIfPossible(T obj) | Klonar ett objekt eller returnerar originalet |
jämför (T c1, T c2) | Jämför objekt |
defaultIfNull(T-objekt, T defaultValue) | Returnerar standardobjektet om objektet är null |
lika med(Objekt objekt1, Objekt objekt2) | Jämför två objekt |
notEqual(Objekt objekt1, Objekt objekt2) | Kontrollera om två objekt inte är lika |
firstNonNull(T...värden) | Returnerar det första objektet som inte är null |
getFirstNonNull(Leverantör |
Returnerar det första objektet som inte är null |
getIfNull(T-objekt, leverantör |
Returnerar det givna objektet om det inte är null, annars returnerar värdet Supplier.get() för den godkända leverantören |
hashCode(obj) | Beräknar hashkoden för ett objekt |
hashCodeMulti(Objekt... objekt) | Beräknar hashCode för en grupp objekt |
isEmpty(Objektobjekt) | Kontrollerar om ett objekt är tomt eller null |
isNotEmpty(Objektobjekt) | Kontrollerar om ett objekt inte är tomt eller null |
requireNonEmpty(T obj) | Kontrollerar om ett objekt inte är null, annars skapar ett undantag |
requireNonEmpty(T obj, String message) | Kontrollerar om ett objekt inte är null, annars skapar ett undantag |
identityToString(Objektobjekt) | Returnerar en sträng för ett objekt |
toString(Object obj) | Returnerar en sträng för ett objekt |
toString(Object obj, String nullStr) | Returnerar en sträng för ett objekt |
toString(Object obj, Supplier |
Returnerar en sträng för ett objekt |
Låt oss titta på en metod från varje grupp. Jag hoppas att du kommer att använda dem ofta, eftersom de är väldigt bekväma och låter dig undvika onödig kod.
ObjectUtils.compare()
Metoden jämför objekt på samma sätt som komparator: större än, mindre än eller lika med. Den kan användas för att sortera objekt.
Metodsignaturen ser ut så hä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);
Om den tredje parametern ( nullGreater ) är sant , kommer null alltid att anses vara större än icke - null . Metoden returnerar positivt om c1> c2, negativt om c1<c2 och 0 om c1 == c2.
Exempel:
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();
Programmet kommer att visa resultatet:
0
1
-8
ObjectUtils.isNotEmpty()
Metoden isNotEmpty() kontrollerar att objektet som skickas till det varken är tomt eller null .
Metodsignatur:
public static boolean isNotEmpty(final Object object)
Exempel:
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));
Resultatet kommer att visas på skärmen:
false
true
false
java.util.Objects
Java-utvecklarna gillade verkligen idén med ObjectUtils , så i JDK 7 lade de till sina egna:
isNull(Objectobj) | Kontrollerar om ett objekt är null |
nonNull(Object obj) | Kontrollerar om ett objekt inte är null |
toString(Objecto) | Konverterar ett objekt till en sträng |
toString(Objecto, String nullDefault) | Konverterar ett objekt till en sträng |
boolesk lika med(Objekt a, Objekt b) | Jämför objekt |
boolean deepEquals(Objekt a, Objekt b) | Jämför objekt |
T requireNonNull(T obj) | Kontrollerar om den skickade parametern inte är null |
T requireNonNull(T obj,String message) | Kontrollerar om den skickade parametern inte är null |
int hashCode(Objekt o) | Beräknar hashkoden för ett objekt |
int hash(Objekt...värden) | Beräknar hashCode för en grupp objekt |
int compare(T a,T b,Comparator c) | Jämför objekt |
Eftersom klassen java.util.Objects är en del av JDK, rekommenderas det att du använder den i din kod.
Det är viktigt att notera att när du läser någon annans kod kommer du med största sannolikhet att stöta på alternativ från ObjectUtils , detta händer ofta i öppen källkod. Här kan du se hur de skiljer sig åt.
GO TO FULL VERSION