Spec-Zone.ru › OpenJDK 8

Класс Objects

  • java.lang.Object
    • java.util.Objects

public final class Objects
extends Object

Этот класс содержит static утилитарные методы для работы с объектами. Эти утилиты включают null-безопасные или null-толерантные методы для вычисления хэш-кода объекта, возвращения строки для объекта и сравнения двух объектов.

Since:
1.7

Методы

Модификатор и тип Метод и описание
static <T> int compare(T a, T b, Comparator<? super T> c)

Возвращает 0, если аргументы идентичны, и c.compare(a, b) в противном случае.

static boolean deepEquals(Object a, Object b)

Возвращает true, если аргументы глубоко равны друг другу, и false в противном случае.

static boolean equals(Object a, Object b)

Возвращает true, если аргументы равны друг другу, и false в противном случае.

static int hash(Object... values)

Генерирует хэш-код для последовательности входных значений.

static int hashCode(Object o)

Возвращает хэш-код не-null аргумента и 0 для null аргумента.

static boolean isNull(Object obj)

Возвращает true, если предоставленная ссылка является null, в противном случае возвращает false.

static boolean nonNull(Object obj)

Возвращает true , если предоставленная ссылка не-null, в противном случае возвращает false.

static <T> T requireNonNull(T obj)

Проверяет, что указанная ссылка на объект не null.

static <T> T requireNonNull(T obj, String message)

Проверяет, что указанная ссылка на объект не null и выбрасывает настраиваемую NullPointerException, если это так.

static <T> T requireNonNull(T obj, Supplier<String> messageSupplier)

Проверяет, что указанная ссылка на объект не null и выбрасывает настраиваемую NullPointerException, если это так.

static String toString(Object o)

Возвращает результат вызова toString для не-null аргумента и "null" для null аргумента.

static String toString(Object o, String nullDefault)

Возвращает результат вызова toString для первого аргумента, если первый аргумент не null, и возвращает второй аргумент в противном случае.

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Методы

equals

public static boolean equals(Object a,
                             Object b)

Возвращает true если аргументы равны друг другу и false в противном случае. Следовательно, если оба аргумента null, возвращается true, а если ровно один аргумент null, возвращается false. В противном случае равенство определяется с помощью метода equals первого аргумента.

Параметры:
a - объект
b - объект для сравнения с a на предмет равенства
Возвращает:
true если аргументы равны друг другу и false в противном случае
См. также:
Object.equals(Object)

deepEquals

public static boolean deepEquals(Object a,
                                 Object b)

Возвращает true если аргументы глубоко равны друг другу и false в противном случае. Два null значения глубоко равны. Если оба аргумента являются массивами, алгоритм в Arrays.deepEquals используется для определения равенства. В противном случае равенство определяется с помощью метода equals первого аргумента.

Параметры:
a - объект
b - объект для сравнения с a на предмет глубокого равенства
Возвращает:
true если аргументы глубоко равны друг другу и false в противном случае
См. также:
Arrays.deepEquals(Object[], Object[]), equals(Object, Object)

hashCode

public static int hashCode(Object o)

Возвращает хэш-код не-null аргумента и 0 для null аргумента.

Параметры:
o - объект
Возвращает:
хэш-код не-null аргумента и 0 для null аргумента
См. также:
Object.hashCode()

hash

public static int hash(Object... values)

Генерирует хэш-код для последовательности входных значений. Хэш-код генерируется так, как будто все входные значения были помещены в массив, а этот массив был хеширован вызовом Arrays.hashCode(Object[]).

Этот метод полезен для реализации Object.hashCode() на объектах, содержащих несколько полей. Например, если объект имеет три поля, x, y, и z, можно написать:

@Override public int hashCode() {
    return Objects.hash(x, y, z);
}
Предупреждение: когда предоставляется одна ссылка на объект, возвращаемое значение не равно хэш-коду этой ссылки на объект. Это значение можно вычислить, вызвав hashCode(Object).
Параметры:
values - значения, которые нужно хешировать
Возвращает:
значение хэша последовательности входных значений
См. также:
Arrays.hashCode(Object[]), List.hashCode()

toString

public static String toString(Object o)

Возвращает результат вызова toString для не-null аргумента и "null" для null аргумента.

Параметры:
o - объект
Возвращает:
результат вызова toString для не-null аргумента и "null" для null аргумента
См. также:
Object.toString(), String.valueOf(Object)

toString

public static String toString(Object o,
                              String nullDefault)

Возвращает результат вызова toString для первого аргумента, если первый аргумент не null, и возвращает второй аргумент в противном случае.

Параметры:
o - объект
nullDefault - строка, возвращаемая, если первый аргумент null
Возвращает:
результат вызова toString для первого аргумента, если он не null, и второй аргумент в противном случае.
См. также:
toString(Object)

compare

public static <T> int compare(T a,
                              T b,
                              Comparator<? super T> c)

Возвращает 0, если аргументы идентичны, и c.compare(a, b) в противном случае. Следовательно, если оба аргумента null, возвращается 0.

Обратите внимание, что если один из аргументов null, может или не может быть выброшено NullPointerException, в зависимости от того, какая политика упорядочения, если таковая имеется, политика Comparator выбирает для null значений.

Параметры типа:
T - тип сравниваемых объектов
Параметры:
a - объект
b - объект для сравнения с a
c - Comparator для сравнения первых двух аргументов
Возвращает:
0, если аргументы идентичны, и c.compare(a, b) в противном случае.
См. также:
Comparable, Comparator

requireNonNull

public static <T> T requireNonNull(T obj)

Проверяет, что указанная ссылка на объект не null. Этот метод предназначен в первую очередь для проверки параметров в методах и конструкторах, как показано ниже:

public Foo(Bar bar) {
    this.bar = Objects.requireNonNull(bar);
}

Параметры типа:
T - тип ссылки
Параметры:
obj - ссылка на объект для проверки на пустоту
Возвращает:
obj если не null
Исключения:
NullPointerException - если obj является null

requireNonNull

public static <T> T requireNonNull(T obj,
                                   String message)

Проверяет, что указанная ссылка на объект не null и выбросит настроенное исключение NullPointerException, если она есть. Этот метод предназначен в первую очередь для проверки параметров в методах и конструкторах с несколькими параметрами, как показано ниже:

public Foo(Bar bar, Baz baz) {
    this.bar = Objects.requireNonNull(bar, "bar must not be null");
    this.baz = Objects.requireNonNull(baz, "baz must not be null");
}

Параметры типа:
T - тип ссылки
Параметры:
obj - ссылка на объект для проверки на пустоту
message - сообщение об ошибке, используемое в случае выброса исключения NullPointerException
Возвращает:
obj если не null
Исключения:
NullPointerException - если obj является null

isNull

public static boolean isNull(Object obj)

Возвращает true если предоставленная ссылка является null, в противном случае возвращает false.

Примечание API:
Этот метод предназначен для использования в качестве Predicate, filter(Objects::isNull)
Параметры:
obj - ссылка, проверяемая на null
Возвращает:
true если предоставленная ссылка является null, в противном случае false
С:
1.8
См. также:
Predicate

nonNull

public static boolean nonNull(Object obj)

Возвращает true если предоставленная ссылка не null, в противном случае возвращает false.

Примечание API:
Этот метод предназначен для использования в качестве Predicate, filter(Objects::nonNull)
Параметры:
obj - ссылка для проверки на null
Возвращает:
true если предоставленная ссылка не null, в противном случае false
С:
1.8
См. также:
Predicate

requireNonNull

public static <T> T requireNonNull(T obj,
                                   Supplier<String> messageSupplier)

Проверяет, что указанная ссылка на объект не null и выбросит настроенное исключение NullPointerException, если она есть.

В отличие от метода requireNonNull(Object, String), этот метод позволяет отложить создание сообщения до проверки на null. Хотя это может обеспечить преимущество производительности в случае непустой ссылки, при принятии решения о вызове этого метода следует учесть, что затраты на создание поставщика сообщений меньше, чем затраты на непосредственное создание строкового сообщения.

Параметры типа:
T - тип ссылки
Параметры:
obj - ссылка на объект для проверки на пустоту
messageSupplier - поставщик сообщения об ошибке, используемого в случае выброса исключения NullPointerException
Возвращает:
obj если не null
Исключения:
NullPointerException - если obj является null
С:
1.8

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API