collection
java.util.Collection接口,是所有单列集合的最顶层的接口,里面定义了所有单列集合的共性的方法
任意的单列集合都可以使用Collection接口中的方法
共性方法有:
public void clear();清空集合中的元素。
public boolean remove(E e);把给定的对象在当前集合中删除。
public boolean contains(E e):判断当前集合是否包含给定对象。
public boolean isEmpty():判断当前集合是否为空。
public int size():返回集合中的元宵个数。
public Object[] toArray():把集合中的元素存储到数组中去。
import java.util.Collection;
import java.util.ArrayList;
public class demoCollection {
public static void main(String[] args) {
Collection<String> col=new ArrayList<>();
System.out.println(col);//重写了toString方法[]
/*public b1 add(E e):把给定的对象添加到当前的集合中,返回值一般是true,所以可以不用接收*/
boolean b1=col.add("张三");
System.out.println("b1:"+b1);
System.out.println(col);
col.add("李四");
col.add("王五");
col.add("田七");
System.out.println(col);
/*public remove(E e);把给定对象在当前集合中删除。返回值是一个boolean值,集合中有的删除,返回值是
true,集合中没有的元素删除失败,返回值是false*/
boolean b2=col.remove("田七");
System.out.println("b2:"+b2);
boolean b3=col.remove("赵六");
System.out.println("b3;"+b3);
/*public boolean contains (E e);判断当前集合中是否包含给定的对象。
包含返回true,不包含返回false*/
boolean b4=col.contains("赵四");
System.out.println("b4:"+b4);
boolean b5=col.contains("李四");
System.out.println("b5:"+b5);
boolean b6=col.isEmpty();
System.out.println(b6);
/*public int size();返回集合中的个数。*/
int size=col.size();
System.out.println("集合中的元素个数:"+size);
/*public Object[] toArray():把集合中的元素存储到数组中去。*/
Object[] array=col.toArray();
for (int i=0;i<array.length;i++){
System.out.println(array[i]);
}
col.clear();
System.out.println(col);
}
}
Iterator迭代器的使用
java.util.Iterator接口:迭代器(对集合的遍历)
有两个常用的方法:
boolean hasNext()如果仍有元素可以迭代,则返回true。
判断集合中还有没有下一个元素,有就返回true,没有就返回false
E next()返回迭代的下一个元素,取出集合中的下一个元素
Iterator迭代器,是一个接口,我们无法直接使用,需要使用Iterator接口的实现类对象,获取方式比较特殊
collection接口中有一个方法,叫iterator(),这个方法返的就是迭代器的对象
Iteratoriterator()返回在此collection的元素上进行迭代的迭代器
迭代器的使用步骤(重点);
1、使用集合中方法iterator()获取迭代器的实现类对象,使用Iterator接口接受(多态)
2、使用Iterator接口中的方法hasNext判断还有没有下一个元素
3、使用Iterator接口中的方法next取出集合中的下一个元素
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
public class demoIterator {
public static void main(String[] args) {
Collection coll=new ArrayList();
coll.add("姚明");
coll.add("科比");
coll.add("麦迪");
coll.add("詹姆斯");
coll.add("艾弗森");
/*使用集合中方法iterator()获取迭代器的实现对象,使用Iterator接口接收(多态)
注意:Iterator<E>接口也是有泛型的,迭代器的泛型跟着集合走的,集合是什么泛型,
迭代器是什么泛型*/
//多态 接口 实现类对象
Iterator<String> it=coll.iterator();
//使用Iterator接口中的方法hasNext判断还有没有下一个元素
boolean b= it.hasNext();
System.out.println(b);
//3、使用Iterator接口中的方法next取出集合中的下一个元素
String s= it.next();
System.out.println(s);
while (it.hasNext()){
String e= it.next();
System.out.println(e);
}
System.out.println("=============");
for (Iterator<String>it2= coll.iterator(); it.hasNext();){
String e= it2.next();
System.out.println(e);
}
}
}