В Java можно сравнивать два массива, сравнивая каждый элемент массива. Класс Arrays предоставляет методы, которые могут быть полезны для выполнения сравнения двух массивов в Java.
Мы узнаем, как сравнивать два массива в Java с помощью метода Arrays.equals() и Arrays.deepEquals()with examples.
Два массива равны, если они имеют:
public static boolean equals(int[] a1, int[] a2)
Метод равно возвращает true если элементы массива равны, иначе false.
Example:
import java.util.Arrays;Runtime:
public class равно
{
public static void main (String[] args)
{
// таблицы для сравнения
int[] array1 = new int[] {1, 2, 3, 4, 5};
int[] array2 = new int[] {1, 2, 3, 4, 5};
int[] array3 = new int[] {1, 2, 2, 4, 5};
//сравниваем массивы array1 и array2 с equals
if method(Arrays.equals(array1, array2))
System.out.println("Массивы равны");
else
System.out.println("Массивы не равны.");
// сравниваем array1 с array3
if (Arrays.equals(array1, array3))
System.out.println("Массивы равны");
else
System.out.println("Массивы не равны.");
}
}
Массивы равны
Массивы не равны.
Метод Arrays.equals() сравнивает элементы двух массивов.
Примечание: если два массива содержатся в разных объектах, но имеют одинаковые значения, то они не равны, как показано в примере ниже.
public class comparisonArrays2
{
public static void main (String[] args)
{
// таблицы для сравнения
String[] array1 = new String[] {"a", "b", "c", "d"};
String[] array2 = new String[] {"a", "b", "c", "d"};
Объект[] arrayObj1 = {array1};
Object[] arrayObj2 = {array2};
// сравниваем arrayObj1 и arrayObj2
if (Arrays.equals(arrayObj1, arrayObj2))
System.out.println("Массивы равны");
else
System.out.println("Массивы не равны.");
}
}
Execution:
Массивы не равны.
Мы видим, что Arrays.equals() не может сделать более глубокое сравнение, и для решения этой проблемы нужно использовать метод deepEquals().
Класс Arrays предоставляет другой, более эффективный метод для более глубокого сравнения содержимого массивов, как следует из названия.
public static boolean deepEquals(Object[] t1, Object[] t2)
Метод deepEquals разобрать оба массива t1 и T2 и сравнивает их. после глубокого анализа возвращает TURE, если они равны, в противном случае false.
Two arrays t1 et t2 of типа Object равны, если они имеют хотя бы одно из следующих свойств:
Example:
public class comparisonArrays3
{
public static void main (String[] args)
{
// таблицы для сравнения
String[] array1 = new String[] {"java", "php", "javascript", "c++"};
String[] array2 = new String[] {"java", "php", "javascript", "c++"};
Объект[] t1 = {array1};
Объект[] t2 = {array2};
// сравниваем arrayObj1 и arrayObj2
if (Arrays.deepEquals(t1, t2))
System.out.println("Массивы равны");
else
System.out.println("Массивы не равны.");
}
}
Runtime:
Массивы равны
Ссылки:
Please disable your ad blocker and refresh the window to use this website.