Collection接口-定义了存取对象的方法。
两个非常常用的子接口: List接口:存放的元素有序且允许有重复的集合接口。Set接口:存放的元素无序不包含重复的集合接口,所有的重复内容是靠hashCode()和euqals()两个方法区分的。说明: “元素”-对象,实例 “重复”-两个对象通过equals相等。 “有序”-元素存入的顺序与取出的顺序相同。
1、 int size(); 返回此collection中的元素数。 2、 boolean isEmpty(); 判断此collection中是否包含元素。 3、 boolean contains(Object obj); 判断此collection是否包含指定的元素。 4、 boolean contains(Collection c); 判断此collection是否包含指定collection中的所有元素。 5、 boolean add(Object element); 向此collection中添加元素。 6、 boolean addAll(Collection c);将指定collection中的所有元素添加到此collection中 7、 boolean remove(Object element); 从此collection中移除指定的元素。 8、 boolean removeAll(Collection c); 移除此collection中那些也包含在指定collection中的所有元素。 9、 void clear(); 移除些collection中所有的元素。 10、 boolean retainAll(Collection c); 仅保留此collection中那些也包含在指定collection的元素。 11、 Iterator iterator(); 返回在此collection的元素上进行迭代的迭代器。 12、 Object[] toArray(); 把此collection转成数组。
Demo.java
public class Demo { public static void main(String[] args) { // 声明一个集合 Collection collection = new ArrayList(); collection.add("第一个元素"); collection.add("第二个元素"); collection.add(1);// 存一个integer类型的对象,自动打包 collection.add(true);// Boolean // 判断是否为空 System.out.println(collection.isEmpty()); // 判断元素是否在集合中 System.out.println(collection.contains("第一个元素")); // 获取集合长度(元素个数) System.out.println(collection.size()); // 移除指定元素 System.out.println(collection.remove("2")); // 清空所有元素 // collection.clear(); Iterator iterator = collection.iterator();// 返回与这个集合关联的迭代器 // 返回迭代器后面是否还有元素 // Object obj = iterator.next();// 跳过下一个元素,返回一个元素的引用 // System.out.println(obj); while (iterator.hasNext()) { System.out.println(iterator.next()); } } }Demo2.java
public class Demo2 { public static void main(String[] args) { Collection<String> names = new ArrayList<String>(); names.add("志玲"); names.add("凤姐"); names.add("思聪"); names.add("冠希"); Iterator<String> iterator = names.iterator(); while (iterator.hasNext()) { String name = iterator.next(); // iterator.remove();// 移除刚刚迭代的元素,可以在迭代的过程中移除 System.out.println(name); } } }注意: 1.在迭代元素的过程中,移除元素只能使用迭代器的remove方法,移除刚刚next过的那个元素(先next再remove) 2.在迭代元素的过程中,禁止使用集合对象的remove方法 3.迭代的过程中,除了调用迭代器的remove方法,避免添加元素 4.集合在判断一个对象是否存在,调用了这个对象equals方法,然后把集合中的元素作为参数传入,返回true,则认为相等