Java.util.Arrays.deepEquals()


描述

所述java.util.Arrays.deepEquals(Object[] a1, Object[] a2)如果两个指定阵列深深等于一个another.Two数组引用被认为是深等于如果两者都为空,或者如果它们是指方法返回true包含相同数量元素的数组和两个数组中所有相应的元素对完全相同。

如果满足以下任何条件,则两个可能为空的元素e1和e2非常相等

  • e1和e2都是对象引用类型的数组,而Arrays.deepEquals(e1,e2)将返回true

  • e1和e2是相同原始类型的数组,并且Arrays.equals(e1,e2)的适当重载将返回true。

  • e1 == e2

  • e1.equals(e2)将返回true。

声明

以下是java.util.Arrays.deepEquals()方法的声明

public static boolean deepEquals(Object[] a1, Object[] a2)

参数

a1 - 这是要测试相等性的数组。

a2 - 这是要测试相等性的另一个数组。

返回值

如果两个数组相等,则此方法返回true,否则返回false。

异常

NA

实例

以下示例显示了java.util.Arrays.deepEquals()方法的用法。

package com.tutorialspoint;

import java.util.Arrays;

public class ArrayDemo {
   public static void main(String[] args) {

      // initializing Object array1
      Object[] b1 = new Object[] { 'a', 'b' };

      // let us print all the values available in array2
      System.out.println("Elements of Array1 is:");
      for (Object value : b1) {
         System.out.println("Value = " + value);
      }

      // initializing Object array2
      Object[] b2 = new Object[] { 'a', 'b' };

      // let us print all the values available in array2
      System.out.println("Elements of Array2 is:");
      for (Object value : b2) {
         System.out.println("Value = " + value);
      }

      // initializing Object array3
      Object[] b3 = new Object[] { 'x', 'y' };

      // let us print all the values available in array3
      System.out.println("Elements of Array3 is:");
      for (Object value : b3) {
         System.out.println("Value = " + value);
      }

      // checking array1 and array2 for equality
      System.out.println("Array1 and Array2 are equal:" + Arrays.deepEquals(b1,b2));

      // checking array1 and array3 for equality
      System.out.println("Array1 and Array3 are equal:" + Arrays.deepEquals(b1,b3));
   }
}

让我们编译并运行上面的程序,这将产生以下结果

Elements of Array1 is:
Value = a
Value = b
Elements of Array2 is:
Value = a
Value = b
Elements of Array3 is:
Value = x
Value = y
Array1 and Array2 are equal:true
Array1 and Array3 are equal:false