文章详情页
Java中List的contains方法为什么不能实现二维数组中的去重?
浏览:261日期:2024-02-07 16:53:24
问题描述
请教为什么以下代码会返回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; }
可以改写 比较所有元素的吧
标签:
java
相关文章:
1. redis sentinel怎么跑守护进程以及日志记录位置的?2. 前端 - 这段代码一直生效不了,查半天因为 top: 0px; 分号后一个隐藏的东西,也不是占位符...删了就可以生效,这是什么情况。。3. javascript - sublime快键键问题4. 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败!5. django - Nginx uwsgi 进程问题6. javascript - 爱加密的HTML5应用加固服务是什么原理?7. 微信小程序支持跳转到外部链接网页吗8. javascript - 解释下这种函数定义9. html5 - ElementUI table中el-table-column怎么设置百分比显示。10. javascript - 求助关于js正则问题
排行榜

网公网安备