Java 数组 equals 方法

Java 的 Arrays.equals 方法是 Array Methods 之一,用于检查用户指定的数组是否相等。如果它们相等,则返回布尔值 TRUE;否则返回 FALSE。

本文将通过一个示例展示如何使用 equals 方法比较数组。Arrays.equals 的语法如下所示。

Java Array equals 方法语法

有九种不同的 Java equals 方法用于比较用户指定的数组。以下方法接受两个布尔数组(a1 和 a2)作为参数,并检查 a1 和 a2 是否相等。如果它们相等,则返回布尔值 TRUE;否则返回 FALSE。

public static boolean equals(Boolean[] al, Boolean[] a2); // It will return Boolean

//In order to use in program
Arrays.equals(Boolean[] al, Boolean[] a2);

此方法接受两个字节数组(b1 和 b2)并检查 b1 和 b2 是否相等。如果它们相等,则返回布尔值 TRUE;否则返回 FALSE。

public static boolean equals(Byte[] bl, Byte[] b2); // It will return Boolean

//In order to use in program
Arrays.equals(Byte[] bl, Byte[] b2);

此函数接受两个短整型数组(s1 和 s2)作为参数,并检查 s1 和 s2 是否相等。如果它们相等,则返回布尔值 TRUE;否则返回 FALSE。

public static boolean equals(short[] sl, short[] s2); // It will return Boolean

//In order to use in program
Arrays.equals(short[] sl, short[] s2);

下面的方法接受两个字符数组(c1 和 c2)作为参数,并检查 c1 和 c2 是否相等。如果它们相等,则返回布尔值 TRUE;否则返回 FALSE。

public static boolean equals(char[] cl, char[] c2); // It will return Boolean

//In order to use in program
Arrays.equals(char[] cl, char[] c2);

Java 方法将接受两个整型数组(i1 和 i2)作为参数,并检查 i1 和 i2 是否相等。如果它们相等,则返回布尔值 TRUE;否则返回 FALSE。

public static boolean equals(int[] il, int[] i2); // It will return Boolean

//In order to use in program
Arrays.equals(int[] il, int[] i2);

它接受两个长整型数组(l1 和 l2)作为参数,并检查 l1 和 l2 是否相等。如果它们相等,则返回布尔值 TRUE;否则返回 FALSE。

public static boolean equals(long[] ll, long[] l2); // It will return Boolean

//In order to use in program
Arrays.equals(long[] ll, long[] l2);

此方法将接受两个双精度浮点型数组(d1 和 d2)作为参数,并检查 d1 和 d2 是否相等。如果它们相等,则返回布尔值 TRUE;否则返回 FALSE。

public static boolean equals(double[] dl, double[] d2); // It will return Boolean

//In order to use in program
Arrays.equals(double[] dl, double[] d2);

下面的方法将接受两个单精度浮点型数组(f1 和 f2)作为参数,并检查 f1 和 f2 是否相等。如果它们相等,则返回布尔值 TRUE;否则返回 FALSE。

public static boolean equals(float[] fl, float[] f2); // It will return Boolean

//In order to use in program
Arrays.equals(float[] fl, float[] f2);

它接受两个对象数组(Obj1 和 Obj2)作为参数,并检查 Obj1 和 Obj2 是否相等。如果它们相等,则返回布尔值 TRUE;否则返回 FALSE。

public static boolean equals(Object[] Objl, Object[] Obj2); // It will return Boolean

//In order to use in program
Arrays.equals(Object[] Objl, Object[] Obj2);

Java equals 比较字节数组

在此 Java 程序中,我们声明了三个包含随机元素的字节 数组。接下来,我们将调用 public static boolean equals (byte[] b1, byte[] b2) 方法来检查它们是否相等。

package ArrayMethods;
import java.util.Arrays;

public class ByteEquals {
	public static void main(String[] args) {
		byte[] byteArray = {8, 20, 45, 12}; 
		byte[] bytArray = {8, 20, 45, 12}; 
		byte[] bitArray = {10, 25, 8, 19, 16}; 
		
		//Checking for Equality
		System.out.println(Arrays.equals(byteArray, bitArray));
				
		if(Arrays.equals(byteArray, bytArray)) {
			System.out.println("Two Byte Arrays are Equal");
		}
		else  {
			System.out.println("Byte Arrays are Not Equal");
		}
	}
}
Java Array Equals Method 1

首先,我们声明了三个字节数组,并为其元素分配了一些随机值。

接下来,我们使用该方法检查上述字节数组(byteArray、bitArray)是否相等。

接下来,我们使用 If Else 语句 来检查上述字节数组(byteArray、bitArray)是否相等。

  • 如果 If 语句内的条件为 True(如果它们相等),则打印 System.out.println(” Two Byte are Equal “); 语句。
  • 否则,将打印 System.out.println(“Byte are Not Equal”); 语句。

Java equals 比较布尔数组

在此程序中,我们声明了三个包含随机元素的布尔数组。然后,我们将调用 public static boolean equals (boolean[] a1, boolean[] a2) 方法来检查它们是否相等。

package ArrayMethods;
import java.util.Arrays;

public class BooleanEquals {
	public static void main(String[] args) {
		boolean[] bool = {true, false, false, true};
		boolean[] boolArray = {true, false, true, false};
		boolean[] anBoolArray = {true, false, false, true};
		
		//Checking for Equality
		System.out.println(Arrays.equals(bool, boolArray));
				
		if(Arrays.equals(bool, anBoolArray)) {
			System.out.println("Both are Equal");
		}
		else  {
			System.out.println("Not Equal");
		}
	}
}
false
Both are Equal

Java equals 比较短整型数组

在此程序中,我们声明了三个包含随机元素的短整型数组。然后,我们将调用 public static boolean equals (short[] s1, short[] s2) 方法来检查它们是否相等。

package ArrayMethods;
import java.util.Arrays;

public class ShortEquals {
	public static void main(String[] args) {
		short[] ShtArray = {5, 9, 11, 7, 6}; 
		short[] ShrtArray = {5, 9, 11, 7, 6}; 
		short[] ShortArray = {12, 6, 8, 3, 2}; 
		
		//Checking for Equality
		System.out.println(Arrays.equals(ShtArray, ShrtArray));
				
		if(Arrays.equals(ShrtArray, ShortArray)) {
			System.out.println("Both are Equal");
		}
		else  {
			System.out.println("Not Equal");
		}
	}
}
true
Not Equal

Java equals 比较整型数组

在此 Java 程序中,我们声明了三个整型数组。然后,我们将调用 public static boolean equals (int[] i1, int[] i2) 方法来检查它们是否相等。

package ArrayMethods;
import java.util.Arrays;

public class IntEquals {
	public static void main(String[] args) {
		int[] intArray = {28, 64, 48, 95, 15}; 
		int[] itArray = {28, 64, 48, 95, 15}; 
		int[] anIntArray = {28, 64, 48, 105, 125}; 
		
		//Checking for Equality
		System.out.println(Arrays.equals(intArray, anIntArray));
				
		if(Arrays.equals(intArray, itArray)) {
			System.out.println("Both are Equal");
		}
		else  {
			System.out.println("Not Equal");
		}
	}
}
false
Both are Equal

比较长整型数组

在此 Java 程序中,我们声明了三个包含随机元素的长整型数组。然后,我们将调用 public static boolean equals (long[] l1, long[] l2) 方法来检查它们是否相等。

package ArrayMethods;
import java.util.Arrays;

public class LongEquals {
	public static void main(String[] args) {
		long[] LnArray = {164, 17, 198, 178, 135}; 
		long[] LngArray = {164, 17, 198, 178, 135}; 
		long[] LongArray = {250, 100, 80, 160, 190}; 	
		
		//Checking for Equality
		System.out.println(Arrays.equals(LnArray, LongArray));
				
		if(Arrays.equals(LnArray, LngArray)) {
			System.out.println("Both the Long are Equal");
		}
		else  {
			System.out.println("Long are Not Equal");
		}
	}
}
false
Both the Long are Equal

比较双精度浮点型数组

在此 Java 程序中,我们声明了三个包含随机元素双精度浮点型数组。然后,我们将调用 public static boolean equals (double[] d1, double[] d2) 方法来检查它们是否相等。

package ArrayMethods;
import java.util.Arrays;

public class DoubleEquals {
	public static void main(String[] args) {
		double[] dblArray = {218.456, 120.654, 98.4148, 658.945, 315.458}; 
		double[] doubleArray = {218.456, 120.654, 98.4148, 658.945, 315.458}; 
		double[] andoubleArray = {218.45, 102.65, 908.41, 688.94, 325.45};  
		
		//Checking for Equality
		System.out.println(Arrays.equals(dblArray, andoubleArray));
				
		if(Arrays.equals(dblArray, doubleArray)) {
			System.out.println("Both the Double are Equal");
		}
		else  {
			System.out.println("Double are Not Equal");
		}
	}
}
false
Both the Double are Equal

Java equals 比较单精度浮点型数组

在此 Java 程序中,我们声明了三个包含随机元素的单精度浮点型数组。然后,我们将调用 public static boolean equals (float[] f1, float[] f2) 方法来检查它们是否相等。

package ArrayMethods;
import java.util.Arrays;

public class FloatEquals {
	public static void main(String[] args) {
		float[] floatArray = {12.28f, 3.64f, 4.98f, 9.65f, 1.65f}; 
		float[] fltArray = {12.28f, 3.64f, 4.98f, 9.65f, 1.65f}; 
		float[] anfloatArray = {2.98f, 6.45f, 8.65f, 1.55f, 2.5f}; 
		
		//Checking for Equality
		System.out.println(Arrays.equals(floatArray, fltArray));
				
		if(Arrays.equals(floatArray, anfloatArray)) {
			System.out.println("Both the Float Arrays are Equal");
		}
		else  {
			System.out.println("Float Arrays are Not Equal");
		}
	}
}
true
Float Arrays are Not Equal

比较字符数组

在此程序中,它调用 public static boolean equals (char[] c1, char[] c2) 来检查它们是否相等。

package ArrayMethods;
import java.util.Arrays;

public class CharEquals {
	public static void main(String[] args) {
		char[] CharArray = {'g', 'a', 't', 'e'}; 
		char[] CharacterArray = {'g', 'a', 't', 'e', 'w', 'a', 'y'};
		char[] Character = {'g', 'a', 't', 'e', 'w', 'a', 'y'};
		
		//Checking for Equality
		System.out.println(Arrays.equals(CharArray, CharacterArray));
				
		if(Arrays.equals(CharacterArray, Character)) {
			System.out.println("Both are Equal");
		}
		else  {
			System.out.println("Not Equal");
		}
	}
}
false
Both are Equal

比较对象数组

在此 Java 程序中,Javac 调用 public static boolean equals (Object[] Obj1, Object[] Obj2) 来检查它们是否相等。

package ArrayMethods;
import java.util.Arrays;

public class ObjectEquals {
	public static void main(String[] args) {
		String[] strArray = {"Orange", "Strawberry","Grape", "Banana", "Apple", "Kiwi"};
		String[] stringArray = {"India", "UK", "USA", "Australia", "Japan","China", "Korea"};
		String[] strngArray = {"India", "UK", "USA", "Australia", "Japan","China", "Korea"};
		//Checking for Equality
		System.out.println(Arrays.equals(strArray, stringArray));
				
		if(Arrays.equals(stringArray, strngArray)) {
			System.out.println("Both are Equal");
		}
		else  {
			System.out.println("Not Equal");
		}
	}
}
false
Both are Equal