List调用remove(object);方法无法删除!
来源:互联网 发布:域名没备案能解析吗 编辑:程序博客网 时间:2024/05/16 00:59
作者:燕歆波
导读:在遍历List的时候,使用List的contains(object);判断对象是否存在.存在的话就把他删除掉,可是运行之后发现并没有将已存在的对象删除掉。
原因
在网上查询到了人家给出的原因:
List在删除元素的时候,首先判断这个元素是否存在,然后调用equals方法,判断删除的元素是否与存在的元素相同,然后根据存在元素的下标删除这个元素。
所以,List在删除对象时,如果使用删除对象方法,应该最好重写equals方法,自己判断两个对象是否相同,或者使用删除下标的方法。
@Override public boolean equals(Object obj) { if(obj == null){ return false; } if(this==obj){ return true; } if(obj instanceof Person){ Person serviceBean=(Person)obj; if(serviceBean.getName().equals(this.getName()) && serviceBean.getCode().equals(this.getCode()) && serviceBean.getSort() == this.getSort()){ return true; }else{ return false; } } return false; }
阅读全文
0 0
- List调用remove(object);方法无法删除!
- 关于List,ArrayList中remove(object obj)方法不能删除对象问题
- 关于List,ArrayList中remove(object obj)方法不能删除对象问题
- list.remove(object)问题
- list remove-----删除数据
- 解决list.remove(object)问题
- List在执行remove方法不能删除指定的对象
- List<Object>删除某一个Object
- Java中List对象调用remove方法报错:UnsupportedOperationException
- list remove 方法
- list remove 方法
- list remove 方法
- Python List remove()方法
- List remove()方法介绍
- list的remove方法
- List中remove方法
- 列表删除操作-list.remove()
- List的toString方法调用的是否是父类Object的?
- Linux 下如何安装禅道
- Android okhttp 三种请求方式 get put post
- 关于安卓手机 的调试
- MySQL出现错误1205-Lock wait timeout exceeded; try restarting transaction
- 组合数学-- 放回取样基础公式证明
- List调用remove(object);方法无法删除!
- mysql5.7在centos上安装的完整教程以及相关的“坑”
- The most simple and easy to use Qt GUI library plug-in FTStyle (1)
- 代码重构(三):数据重构规则
- Median of Two Sorted Arrays
- MYSQL中limit以及oder by混用产生的一些错误
- Python中常用的字符串内建函数
- Erlang到底好在哪里 -- 聊聊我使用Erlang的经历与感受
- java的Exchanger 两个线程可以交换对象Demo