如何检查我的数组是否具有相同的元素,无论顺序如何?

时间:2015-11-13 00:57:26

标签: java arrays methods

我是网站的新手,为了记录 我环顾四周,但我找不到我想要的答案。

假设我有int [] arrayA和int [] arrayB,我让用户为我设置的多个元素输入值,在这种情况下为5。

所以:

public static void main(String[] args)
{
    Scanner input = new Scanner(System.in);
    int[] arrayA = new int[5];
    int[] arrayB = new int[5];
    for (i = 0; i < arrayA.length; i++)
    {
        arrayA[i] = input.nextInt();
    }
    for (i = 0; i < arrayB.length; i++)
    {
        arrayB[i] = input.nextInt();
    }
}

public static int[] arrayEquality(int[] a, int[] b)
{
    if (a[] != b[])
    {
        return false;
    }
}

如果您可以提供帮助,请不要使用除方法,数组等之外的任何内容。我仍然没有完全掌握我在课堂上学到的东西。

2 个答案:

答案 0 :(得分:0)

    int ary1[] = {1, 4, 5, 8, 3, 2};
    int ary2[] = {1, 8, 2, 5, 4, 9};
    Arrays.sort(ary1);
    Arrays.sort(ary2);
    boolean b = Arrays.equals(ary1, ary2);
    System.out.println(b);

答案 1 :(得分:0)

如果您不想使用Array.sort(),可以尝试以下

void checkEquality (int arrayA[] , int arrayB[]){
    boolean equals = false;
    for (int x = 0 ;x < 5 ; x++){
        equals = false;
        for (int y = 0 ; y < 5 ; y++){  
            if (arrayA[x] == arrayB[y]){
                equals = true;
                break;
            }
        }
        if (equals == false)
            return false;
    }
}