文章详情页
Java中List的contains方法为什么不能实现二维数组中的去重?
浏览:319日期: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. javascript - js数组键名为何不能用变量?我想像PHP那样使用变量作为关联数组键名该怎么做?2. html5 - bootstrap修改样式的问题3. javascript - 在 model里定义的 引用表模型时,model为undefined。4. java - 如图,jsp页面的form中的action是怎么映射到这个位置的?为什么不写dynUser就可以映射到save?5. mysql - 求一个sql语句,比较简单。6. css - 关于HTML中width和height的疑问(这个提问的标题不好起)7. java - 接口中的成员变量怎么不是常量了?8. HTML5表单必填属性设置自定义验证消息?9. javascript - 清空Chrome缓存的疑问10. ruby-on-rails - 在安装RubyOnRails的时候出现问题
排行榜

网公网安备