How to Check if Array has Same Values Java

How to Check if Array has Same Values Java | In this section, we will check whether the two arrays have the same elements or not. The elements may be in a different order or at different indexes but the elements need to be the same.

For more detail see the below example:-

1) int array1[ ] = {10, 20, 30}
int array2[ ] = {10, 10, 10}
No, they don’t have the same values.

2) int array1[ ] = {10, 20, 30}
int array2[ ] = {10, 20, 30}
Yes, both array have same values.

3) int src1[ ] = { 10, 20, 30, 40, 50 };
int src2[ ] = { 20, 10, 40, 30, 50 };
Yes, they are equal. Though the position of elements are different but the elements are same.

Program to Check if Array has Same Values Java

To compare two arrays we will use Arrays.equals() method defined in Java Arrays class. The Java Arrays class contains lot of pre-defined or built-in methods to solve array related problems like sorting, searching, copying and e.t.c. Some other commonly used methods of Arrays class are:- Arrays.toString(), Arrays.sort(), Arrays.copyof(), Arrays.copyOfRange(), Arrays.fill()

import java.util.Arrays;

public class Main {

   public static void main(String[] args) {
      int array1[] = { 10, 20, 30, 40, 50 };
      int array2[] = array1;
      int array3[] = { 10, 50, 40, 30, 20 };
      int array4[] = { 15, 25, 35, 45, 55 };

      Arrays.sort(array1);
      Arrays.sort(array2);
      Arrays.sort(array3);
      Arrays.sort(array4);

      System.out.println("Array1 = " + Arrays.toString(array1));
      System.out.println("Array2 = " + Arrays.toString(array2));
      if (Arrays.equals(array1, array2)) {
         System.out.println("array1 & array2 are same");
      } else {
         System.out.println("array1 & array2 are not same");
      }

      System.out.println("Array3 = " + Arrays.toString(array3));
      if (Arrays.equals(array1, array3)) {
         System.out.println("array1 & array3 are same");
      } else {
         System.out.println("array1 & array3 are not same");
      }

      System.out.println("Array4 = " + Arrays.toString(array4));
      if (Arrays.equals(array1, array4)) {
         System.out.println("array1 & array4 are same");
      } else {
         System.out.println("array1 & array4 are not same");
      }
   }
}

Output:

Array1 = [10, 20, 30, 40, 50]
Array2 = [10, 20, 30, 40, 50]
array1 & array2 are same
Array3 = [10, 20, 30, 40, 50]
array1 & array3 are same
Array4 = [15, 25, 35, 45, 55]
array1 & array4 are not same

In the above program to check if array has same values Java, we have compared array1 to all the other arrays. First, we have sorted the arrays and then we have directly equated array2 to array1.

Since both array1 & array2 contain the same elements hence they are equal. Similarly, array1 and array3 are equal but the positions are different and array1 and array4 are not equal.

Check if Array has Same Values Java – For String arrays

In the previous program to check if array has same values Java we have taken array of integer values. Now let us see another example using array of String values.

import java.util.Arrays;

public class Main {

   public static void main(String[] args) {
      String array1[] = { "apple", "mango" };
      String array2[] = array1;
      String array3[] = { "apple", "banana" };
      String array4[] = { "mango", "apple" };

      Arrays.sort(array1);
      Arrays.sort(array2);
      Arrays.sort(array3);
      Arrays.sort(array4);

      System.out.println("Array1 = " + Arrays.toString(array1));
      System.out.println("Array2 = " + Arrays.toString(array2));
      if (Arrays.equals(array1, array2)) {
         System.out.println("array1 & array2 are same");
      } else {
         System.out.println("array1 & array2 are not same");
      }

      System.out.println("Array3 = " + Arrays.toString(array3));
      if (Arrays.equals(array1, array3)) {
         System.out.println("array1 & array3 are same");
      } else {
         System.out.println("array1 & array3 are not same");
      }

      System.out.println("Array4 = " + Arrays.toString(array4));
      if (Arrays.equals(array1, array4)) {
         System.out.println("array1 & array4 are same");
      } else {
         System.out.println("array1 & array4 are not same");
      }
   }
}

Output:

Array1 = [10, 20, 30, 40, 50]
Array2 = [10, 20, 30, 40, 50]
array1 & array2 are same
Array3 = [10, 20, 30, 40, 50]
array1 & array3 are same
Array4 = [15, 25, 35, 45, 55]
array1 & array4 are not same

If you enjoyed this post, share it with your friends. Do you want to share more information about the topic discussed above or do you find anything incorrect? Let us know in the comments. Thank you!

Leave a Comment

Your email address will not be published. Required fields are marked *