Java中List的contains方法为什么不能实现二维数组中的去重?
迷茫
迷茫 2017-04-18 10:48:06
0
1
857

请教为什么以下代码会返回false?

        List list = new ArrayList();
        int[][] arr = {{-1, -1, 2}, {-1, 0, 1}};
        list.add(arr[0]);
        list.add(arr[1]);
        int[] temp = {-1, 0, 1};
        return list.contains(temp);

当list中的元素是数组时,如何实现去重?谢谢回答

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

répondre à tous(1)
洪涛

equals est utilisé en interne

    public boolean contains(Object o) {
        return indexOf(o) >= 0;
    }
        public int indexOf(Object o) {
        if (o == null) {
            for (int i = 0; i < size; i++)
                if (elementData[i]==null)
                    return i;
        } else {
            for (int i = 0; i < size; i++)
                if (o.equals(elementData[i]))
                    return i;
        }
        return -1;
    }
    

Vous pouvez le réécrire pour comparer tous les éléments

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!