Класс Objects
Класс Objects находится в пакете java.util и содержит
только статические методы для работы с объектами. Он позволяет
безопасно сравнивать объекты, проверять их на null,
вычислять хеш-код и получать строковое представление, избегая
NullPointerException. Методы класса Objects
принимают в качестве параметров ссылки на объекты и возвращают
результат в зависимости от их состояния.
Синтаксис
Objects.equals(obj1, obj2)
Objects.hashCode(obj)
Objects.toString(obj, defaultStr)
Objects.isNull(obj)
Objects.nonNull(obj)
Objects.requireNonNull(obj, message)
Пример
Давайте сравним две строки с помощью метода equals,
который безопасно обрабатывает null:
import java.util.Objects;
public class Main
{
public static void main(String[] args)
{
String str1 = "abcde";
String str2 = "abcde";
String str3 = null;
System.out.println(Objects.equals(str1, str2));
System.out.println(Objects.equals(str1, str3));
}
}
Результат выполнения кода:
true
false
Пример
Давайте проверим объект на null и получим строковое
представление с запасным значением:
import java.util.Objects;
public class Main
{
public static void main(String[] args)
{
String str = null;
System.out.println(Objects.isNull(str));
System.out.println(Objects.nonNull(str));
System.out.println(Objects.toString(str, "default"));
}
}
Результат выполнения кода:
true
false
"default"
Пример
Давайте вычислим хеш-код объекта и проверим обязательное
наличие значения с помощью requireNonNull:
import java.util.Objects;
public class Main
{
public static void main(String[] args)
{
String str = "abcde";
System.out.println(Objects.hashCode(str));
System.out.println(Objects.requireNonNull(str, "str must not be null"));
}
}
Результат выполнения кода:
92599395
"abcde"
Смотрите также
-
метод
requireNonNull,
который проверяет объект на null -
метод
equals,
который сравнивает два объекта -
метод
toString,
который возвращает строковое представление -
метод
hashCode,
который вычисляет хеш-код объекта