import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class CollectionTest03 {
	/**
	boolean remove(Object o);
	remove和contains方法都需要集合中的元素重写equals方法。
	因为Object中的equals方法比较内存地址,在现实的业务逻辑当中
	不能比较内存地址,该比较内容。
*/
	public static void main(String[] args) {
		//创建集合对象
		Collection c = new ArrayList();
		
		Integer i1 = new Integer(10);
		
		//添加元素
		c.add(i1);
		
		//删除
		Integer i2 = new Integer(10);
		c.remove(i2);
		
		System.out.println(c.size()); //0
		
		
		Customer c1 = new Customer("SMITH",100);
		c.add(c1);
		
		Customer c2 = new Customer("SMITH",100);
		c.remove(c2);
		
		System.out.println(c.size()); //0
		c.add(c2);
		c.add(c1);
		System.out.println(c.size());//2
		//深入了解remove方法
		//推荐使用迭代器自身带的remove方法删除元素.这样不会改变集合本身。
		Iterator it = c.iterator();
		
		while(it.hasNext()){
			it.next();
			/*
			 object element = it.next();
			  c.remove(elment);
			 */
			it.remove();
			
		}
		System.out.println(c.size());//0
	}
}