Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Справочник Java

Arrays.equals()

Сравнивает содержимое двух массивов поэлементно.

Доступно с: Java 1.2

Синтаксис

static boolean equals(int[] a, int[] a2)

Параметры

ПараметрТипОписание
aint[], Object[], …Первый массив.
a2same array typeВторой массив.

Возвращаемое значение

booleantrue, если длины равны и все элементы попарно равны.

Примеры

== и equals() у массивов сравнивают ссылки, Arrays.equals() — содержимое:

void main() {
    int[] a = {1, 2, 3};
    int[] b = {1, 2, 3};
    IO.println(a == b);
    IO.println(a.equals(b));
    IO.println(Arrays.equals(a, b));
 
    int[][] x = {{1}, {2}};
    int[][] y = {{1}, {2}};
    IO.println(Arrays.equals(x, y));
    IO.println(Arrays.deepEquals(x, y));
}

Результат:

false
false
true
false
true

Примечания

Для вложенных массивов Arrays.equals() сравнивает внутренние массивы как ссылки — нужен deepEquals(). Порядок важен: {1, 2} и {2, 1} не равны; чтобы сравнить без учёта порядка, отсортируйте копии.

См. также

  • Arrays.toString() — Возвращает содержимое массива в виде строки [1, 2, 3].
  • Arrays.copyOf() — Копирует массив в новый — той же или другой длины. Часть массива копирует copyOfRange().
  • Object.equals() — Сравнивает объекты по смыслу. По умолчанию работает как ==, поэтому в своих классах его переопределяют.

Вопросы и ответы по теме

В учебнике

  • Класс Arrays — Утилиты класса java.util.Arrays: toString, sort, fill, copyOf, copyOfRange, equals и binarySearch.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.