How to compare to integer array with multiple test cases in JAVA.
Hi coders/programmers,
Today we are going to work on the JAVA problem statement. - Check given array is equal or not in core JAVA.
Test case 1: When equal array with same data on same index position.
Input:
int[] arr1 = {1,2,5,9,6};
int[] arr2 = {1,2,5,9,6};
Output: YES
Program:-
public class TwoArrayEqual {
public static void main(String[] args) {
int[] arr1 = {1,2,5,9,6};
int[] arr2 = {1,2,5,9,6};
int len = arr1.length;
if(eqArr(arr1, arr2, len)){
System.out.println("Both arrays are equal.");
}else{
System.out.println("Both arrays are diff.");
}
}
public static boolean eqArr(int[] a1, int[] a2, int len){
boolean flag = false;
for(int i=0; i<len; i++){
if(a1[i]==a2[i]){
flag = true;
}else{
flag = false;
break;
}
}
return flag;
}
}
--------------------
Test case 2: Array with different sizes.
Input:
int[] arr1 = {1,2,5,9,6,8};
int[] arr2 = {1,2,5,9,6};
Output: NO
Program:-
public class TwoArrayEqual {
public static void main(String[] args) {
int[] arr1 = {1,2,5,9,6,8};
int[] arr2 = {1,2,5,9,6};
int len = arr1.length;
int len2 = arr2.length;
if(len==len2){
if(eqArr(arr1, arr2, len)){
System.out.println("Both arrays are equal.");
}
}else{
System.out.println("Both arrays are diff.");
}
}
public static boolean eqArr(int[] a1, int[] a2, int len){
boolean flag = false;
for(int i=0; i<len; i++){
if(a1[i]==a2[i]){
flag = true;
}else{
flag = false;
break;
}
}
return flag;
}
}
--------------------
Test Case 3: Same element but different index position:
Input:
int[] arr1 = {1,2,9,5,6};
int[] arr2 = {1,2,5,9,6};
Output: YES
Program:-
import java.util.Arrays;
public class TwoArrayEqual {
public static void main(String[] args) {
int[] arr1 = {1,2,9,5,6};
int[] arr2 = {1,2,5,9,6};
int len = arr1.length;
int len2 = arr2.length;
Arrays.sort(arr1);
Arrays.sort(arr2);
if(len==len2){
if(eqArr(arr1, arr2, len)){
System.out.println("Both arrays are equal.");
}
}else{
System.out.println("Both arrays are diff.");
}
}
public static boolean eqArr(int[] a1, int[] a2, int len){
boolean flag = false;
for(int i=0; i<len; i++){
if(a1[i]==a2[i]){
flag = true;
}else{
flag = false;
break;
}
}
return flag;
}
}
Thank You!!!
0 Comments