Collection总接口(2/4)
Collection 接口是 List、Set 和 Queue 接口的父接口,该接口里定义的方法 既可用于操作 Set 集合,也可用于操作 List 和 Queue 集合。
JDK不提供此接口的任何直接实现,而是提供更具体的子接口(如:Set和List) 实现。
在 Java5 之前,Java 集合会丢失容器中所有对象的数据类型,把所有对象都 当成 Object 类型处理;从 JDK 5.0 增加了泛型以后,Java 集合可以记住容 器中对象的数据类型。
1、添加
add(Object obj)
addAll(Collection coll)
2、获取有效元素的个数
int size()
3、清空集合 void clear()
4、是否是空集合 boolean isEmpty()
5、是否包含某个元素 boolean contains(Object obj):是通过元素的equals方法来判断是否 是同一个对象
boolean containsAll(Collection c):也是调用元素的equals方法来比 较的。拿两个集合的元素挨个比较
注意事项:
/*Object里的equals 与重写后的equals像collection接口的实现类的对象中添加obj类时,要重写equals方法。使只比较内容 */
6、删除 boolean remove(Object obj) :通过元素的equals方法判断是否是 要删除的那个元素。只会删除找到的第一个元素
boolean removeAll(Collection coll):取当前集合的差集 (取出两集合的公共部分)
7、取两个集合的交集 boolean retainAll(Collection c):把交集的结果存在当前集合中,不 影响c
8、集合是否相等 boolean equals(Object obj)
9、转成对象数组 Object[] toArray() (集合—》数组)
10、获取集合对象的哈希值 hashCode()
11、遍历 iterator():返回迭代器对象,用于集合遍历
@Test
public void test(){
Collection coll =new ArrayList();//接口需要实现类实例化对象
coll.add("AA");//参数为Object;
coll.add(new Date());
coll.add(new String("tom"));
System.out.println(coll.size());//3
//addAll(new ArrayList);
Collection coll2=new ArrayList();
coll2.add("abhu");
coll2.add(1223);
coll.addAll(coll2);
System.out.println(coll.size());//5
System.out.println(coll.contains(new String("tom")));
//重写equals方法只比较内容
System.out.println(coll);
/*
Object里的equals 与重写后的equals
像collection接口的实现类的对象中添加obj类时,要重写equals方法。
使只比较内容
*/
}