РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
728 of 1163 menu

Метод hashCode

Метод hashCode класса Objects возвращает хеш-код, вычисленный на основе переданных аргументов. Этот метод удобен для реализации собственного метода hashCode в классах: вместо ручного вычисления хеша по каждому полю можно передать нужные значения в этот метод. В параметры метода мы передаем произвольное количество объектов, для которых необходимо вычислить общий хеш-код. Если передать значение null, оно учитывается как ноль.

Синтаксис

Objects.hashCode(Object obj) Objects.hash(Object... values)

Пример

Давайте вычислим хеш-код для одной строки:

import java.util.Objects; public class Main { public static void main(String[] args) { String str = "abcde"; int res = Objects.hashCode(str); System.out.println(res); } }

Результат выполнения кода:

92599395

Пример

Давайте вычислим хеш-код для нескольких значений с помощью метода hash:

import java.util.Objects; public class Main { public static void main(String[] args) { String str = "abcde"; int num = 12345; int res = Objects.hash(str, num); System.out.println(res); } }

Результат выполнения кода:

1669644855

Пример

Давайте проверим, как метод обрабатывает значение null. Для этого передадим его в качестве аргумента:

import java.util.Objects; public class Main { public static void main(String[] args) { String str = null; int res = Objects.hashCode(str); System.out.println(res); } }

Результат выполнения кода:

0

Пример

Давайте используем метод hash внутри собственного класса для реализации метода hashCode:

import java.util.Objects; public class Main { public static void main(String[] args) { Point p = new Point(1, 2); System.out.println(p.hashCode()); } } class Point { private int x; private int y; public Point(int x, int y) { this.x = x; this.y = y; } @Override public int hashCode() { return Objects.hash(x, y); } }

Результат выполнения кода:

994

Смотрите также

  • класс Objects,
    который содержит утилиты для работы с объектами
  • метод hash,
    который вычисляет хеш-код для набора значений
  • метод equals,
    который сравнивает объекты с учетом null
  • метод toString,
    который возвращает строковое представление объекта
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить