156_07_集合_Collection集合的常用方法详解_04_remove

来源:互联网 发布:从零开始学英语 知乎 编辑:程序博客网 时间:2024/06/06 00:40
import java.util.ArrayList;import java.util.Collection;import java.util.Iterator;/* * remove()和contains方法都需要集合中的元素重写equals方法。 * 因为Object中的equals方法比较内存地址,在现实中的业务逻辑中不能比较内存地址,该比较内容 * */public class CollectionRemove {public static void main(String[] args) {Collection c =new ArrayList();Integer  i1 = new Integer(10);Integer i2 =new Integer(10);c.add(i1);c.remove(i2);System.out.println(c.size());//0      创建了i2,把i2内存地址指向了new Integer(10); Manager  m1 = new Manager(100, "jack");Manager  m2 = new Manager(100, "jack");c.remove(m2);System.out.println(c.size());//0 /* * 深入remove() * 迭代器的remove()方法 * 集合自身的remove()方法 * */Collection b =new ArrayList();b.add(10);b.add(11);b.add(12);Iterator i =b.iterator();//通过迭代器本身的remove方法去删除(建议)//while(i.hasNext()){//i.next();//i.remove();//}while(i.hasNext()){Object o = i.next();b.remove(o);}System.out.println(b.size());//0}}

0 0