Aby zaoszczędzić trochę pisania i wyjaśnić mój kod, czy istnieje standardowa wersja poniższej metody?
public static boolean bothNullOrEqual(Object x, Object y) {
return ( x == null ? y == null : x.equals(y) );
}
Aby zaoszczędzić trochę pisania i wyjaśnić mój kod, czy istnieje standardowa wersja poniższej metody?
public static boolean bothNullOrEqual(Object x, Object y) {
return ( x == null ? y == null : x.equals(y) );
}
Odpowiedzi:
Dzięki Javie 7 możesz teraz bezpośrednio wykonać zerową bezpieczną równość:
(Biblioteka Jakarta Commons ObjectUtils.equals () stała się przestarzała w Javie 7)
return (x == y) || (x != null && x.equals(y));
)
jeśli przypadkiem masz dostęp do biblioteki Jakarta Commons, jest tam ObjectUtils.equals () i wiele innych przydatnych funkcji.
EDYCJA: początkowo źle odczytano pytanie
Jeśli używasz <1.7, ale masz dostępną guawę: Objects.equal(x, y)