小编典典

比较Java中的两个整数数组

java

我正在尝试编写代码以比较两个数组。在第一个数组中,我输入了自己的数字,但是在第二个数组中,输入了输入文件中的数字。该数组的大小由文件中的第一个数字确定,而第一个数组的大小始终为10。两个数组以及数字的长度必须相同。

我的代码如下:

public static void compareArrays(int[] array1, int[] array2) {
    boolean b = false;
    for (int i = 0; i < array2.length; i++) {

        for (int a = 0; a < array1.length; a++) {

            if (array2[i] == array1[a]) {
                b = true;
                System.out.println("true");
            } else {
                b = false;
                System.out.println("False");
                break;
            }
        }
    }       
}

阅读 538

收藏
2020-03-20

共2个答案

小编典典

public static void compareArrays(int[] array1, int[] array2) {
        boolean b = true;
        if (array1 != null && array2 != null){
          if (array1.length != array2.length)
              b = false;
          else
              for (int i = 0; i < array2.length; i++) {
                  if (array2[i] != array1[i]) {
                      b = false;    
                  }                 
            }
        }else{
          b = false;
        }
        System.out.println(b);
    }
2020-03-20
小编典典

从我的角度来看,你只是尝试看看它们是否相等,如果相等,则true使用类似以下的内容:

boolean areEqual = Arrays.equals(arr1, arr2);

这是这样做的标准方法。

请注意,还必须从JavaDoc 中对数组进行排序以使其相等:

如果两个数组包含相同数量的元素,并且两个数组中所有对应的元素对均相等,则认为两个数组相等。换句话说,如果两个数组包含相同顺序的相同元素,则它们相等。

2020-03-20