Collection:
Collection是 层次结构中的根接口。
添加功能:
boolean add(Object e)
删除功能:
void clear() :删除集合中所有元素(暴力删除)
boolean remove(Object o):删除集合中的指定元素
判断功能:
boolean contains(Object o):集合中是否包含指定的元素
获取功能:
Iterator :接口中有以下的方法:
boolean hasNext() :如果有元素可以迭代,那么返回true,否则返回false
Object next()返回迭代的下一个元素。
存储 String 类型的元素
Collection是 层次结构中的根接口。
注释:JDK 不提供此接口的任何直接 实现:它提供更具体的子接口,更具体的实现类
Collection基本功能:添加功能:
boolean add(Object e)
删除功能:
void clear() :删除集合中所有元素(暴力删除)
boolean remove(Object o):删除集合中的指定元素
判断功能:
boolean contains(Object o):集合中是否包含指定的元素
获取功能:
int size() :获取集合中的元素数
Colleciton的集合的高级功能:
boolean addAll(Collection c) :添加一个集合中的所有元素
boolean removeAll(Collection c):删除的高级功能(思考:删除一个算是删除还是删除所有算是删除?)
boolean containsAll(Collection c):包含所有元素算是包含,还是包含一个算是包含
交集功能:
boolean retainAll(Collection c):A集合对B集合取交集,交集的元素到底是去A集合还是去B集合中,返回值boolean
public class CollectionDemo {
public static void main(String[] args) {
//创建集合
Collection c=new ArrayList();
c.add("abc1");
c.add("abc2");
c.add("abc3");
c.add("abc4");
//创建集合2
Collection c2=new ArrayList();
c2.add("abc1");
c2.add("abc2");
c2.add("abc3");
c2.add("abc4");
c2.add("abc5");
c2.add("abc6");
c2.add("abc7");
System.out.println(c);
System.out.println(c2);
System.out.println("-------------");
//将c2中的元素,添加到c中
/*System.out.println(c.addAll(c2));
System.out.println(c);
System.out.println(c2);*/
//删除一个算删除
/*System.out.println(c.removeAll(c2));
System.out.println(c);
System.out.println(c2);*/
//包含所有元素算包含
/*System.out.println(c.containsAll(c2));
System.out.println(c);
System.out.println(c2);*/
System.out.println(c.retainAll(c2));
System.out.println(c);
System.out.println(c2);
//交集的部分会显示出来,在c1中,没有的就不会显示,看a是否发生变化,若有则true,否则则flase.
}
}
转换功能:
Object[] toArray() :将集合转换成数组
Iterator
iterator() :集合的迭代器方法(获取集合的迭代器)
集合的专有遍历方式 :迭代器遍历Iterator :接口中有以下的方法:
boolean hasNext() :如果有元素可以迭代,那么返回true,否则返回false
Object next()返回迭代的下一个元素。
存储 String 类型的元素
public class IteratorDemo1 {
public static void main(String[] args) {
Collection c=new ArrayList();
c.add("hello");
c.add("my");
c.add("iterator");
Iterator it=c.iterator();
/*System.out.println(it.hasNext());
System.err.println(it.next());
System.out.println(it.hasNext());
System.out.println(it.next());*/
while(it.hasNext()) {
String s=(String)it.next();
System.out.println(s+"----"+s.length());
}
}
}
注意:
1)it.next(),只使用一次即可,使用多次,会出现问题(it.next(),每次使用的时候都是返回一个对象)