En raison du profilage riche, notre code Java est encombré avec des sorties de résultats de méthode d'objets Nullable.Méthode Nullcheck utilisant la référence de méthode java8 possible?
Il ressemble à ce
namedObject == null ? "?" : namedObject.getName()
est-il possible d'écrire une méthode statique pour cela? (par exemple ressemblant à ceci):
Util.nvl(namedObject, NamedObject::getName, "?")
À quoi ressemblerait = Util.nvl? J'ai expérimenté un peu google recherché mais n'ai donné aucun résultat.
Cela ne fonctionne pas:
public static <T> T nvl(T value, Function<T, ?> method, T nullSubstition) {
return value == null ? nullSubstition : (T) method.apply(value);
}
Le compilateur me dit: getName() non statique ne peut pas être référencé à partir d'un contexte statique
Superbe réponse, merci beaucoup! – Nachaz
Ce n'est pas une opération "nvl", cependant, c'est une opération "getOrDefault". –