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");
}
}
}

首先,我们声明了三个字节数组,并为其元素分配了一些随机值。
接下来,我们使用该方法检查上述字节数组(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