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

请教为什么以下代码会返回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中的元素是数组时,如何实现去重?谢谢回答

迷茫
迷茫

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

全部回复 (1)
洪涛

内部是用 equals 的

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; }

可以改写 比较所有元素的吧

    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责声明 Sitemap
    PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!