Présentation de la classe ObjectUtils
Méthodes :
allNotNull(Objet...valeurs) | Vérifie que tous les objets ne sont pas nuls |
toutNull(Objet...valeurs) | Vérifie que tous les objets sont nuls |
anyNotNull(Objet...valeurs) | Vérifie qu'au moins un objet n'est pas nul |
anyNull(Objet... valeurs) | Vérifie qu'au moins un objet est nul |
cloner(T obj) | Clone un objet |
cloneIfPossible(T obj) | Clone un objet ou renvoie l'original |
comparer(T c1, T c2) | Compare des objets |
defaultIfNull(T objet, T defaultValue) | Renvoie l'objet par défaut si l'objet est nul |
égal(Objet objet1, Objet objet2) | Compare deux objets |
notEqual(Objet objet1, Objet objet2) | Vérifier si deux objets ne sont pas égaux |
premierNonNull(T...valeurs) | Renvoie le premier objet qui n'est pas nul |
getFirstNonNull(Fournisseur |
Renvoie le premier objet qui n'est pas nul |
getIfNull(T objet, Fournisseur |
Renvoie l'objet donné s'il n'est pas nul, sinon renvoie la valeur Supplier.get() du fournisseur passé |
code de hachage (obj) | Calcule le hashCode d'un objet |
hashCodeMulti(Objet... objets) | Calcule hashCode pour un groupe d'objets |
isEmpty (objet objet) | Vérifie si un objet est vide ou nul |
n'est pas vide (objet objet) | Vérifie si un objet n'est pas vide ou nul |
requireNonEmpty(T obj) | Vérifie si un objet n'est pas nul, sinon lève une exception |
requireNonEmpty(T obj, String message) | Vérifie si un objet n'est pas nul, sinon lève une exception |
identitéVersChaîne (objet objet) | Renvoie une chaîne pour un objet |
toString(Object obj) | Renvoie une chaîne pour un objet |
toString(Object obj, String nullString) | Renvoie une chaîne pour un objet |
toString(Objet obj, Fournisseur |
Renvoie une chaîne pour un objet |
Examinons une méthode de chaque groupe. J'espère que vous les utiliserez souvent, car ils sont très pratiques et vous permettent d'éviter le code inutile.
ObjectUtils.compare()
La méthode compare les objets de la même manière que le comparateur : supérieur à, inférieur ou égal à. Il peut être utilisé pour trier des objets.
La signature de la méthode ressemble à ceci :
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);
Si le troisième paramètre ( nullGreater ) est true , alors null sera toujours considéré comme supérieur à non null . La méthode renvoie positif si c1> c2, négatif si c1<c2 et 0 si c1 == c2.
Exemple:
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();
Le programme affichera le résultat :
0
1
-8
ObjectUtils.isNotEmpty()
La méthode isNotEmpty() vérifie que l'objet qui lui est passé n'est ni vide ni null .
Signature de la méthode :
public static boolean isNotEmpty(final Object object)
Exemple:
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));
Le résultat s'affichera à l'écran :
false
true
false
java.util.Objects
Les développeurs Java ont vraiment aimé l'idée d' ObjectUtils , donc dans JDK 7 ils ont ajouté le leur :
estNull(Objectobj) | Vérifie si un objet est nul |
nonNull(Object obj) | Vérifie si un objet n'est pas nul |
toString(Objecto) | Convertit un objet en chaîne |
toString(Objecto, String nullDefault) | Convertit un objet en chaîne |
booléen égal(Objet a,Objet b) | Compare des objets |
booléen deepEquals(Objet a,Objet b) | Compare des objets |
T requiertNonNull(T obj) | Vérifie si le paramètre passé n'est pas nul |
T requireNonNull(T obj,String message) | Vérifie si le paramètre passé n'est pas nul |
int hashCode(Objet o) | Calcule le hashCode d'un objet |
int hash(Objet...valeurs) | Calcule hashCode pour un groupe d'objets |
int compare(T a,T b,Comparateur c) | Compare des objets |
Comme la classe java.util.Objects fait partie du JDK, il est recommandé de l'utiliser dans votre code.
Il est important de noter que lorsque vous lisez le code de quelqu'un d'autre, vous rencontrerez très probablement des options de ObjectUtils , cela se produit souvent en open source. Ici vous pouvez voir comment ils diffèrent.