public interface Collection extends Iterable
1.collection实现子类可以存放多个元素,每个元素可以是Object
2.有些Collection的实现类,可以存放重复的元素,有些不可以
3.有些Collection的实现类,有些是有序的(List),有些不是有序(Set)
4.Collection 接口没有直接的实现子类,是通过它的子类接口Set和List来实现的
Collection接口常用方法,以实现子类ArrayList
1.add:添加单个元素
2.remove:删除指定元素
3.contains:查找元素是否存在
4.size:获取元素个数
5.isEmpty:判断是否为控股
6.clear:清空
7.addAll:添加多个元素
8.containsAll:查找多个元素是否都存在
9.removeAll:删除多个元素
10.说明: 以 ArrayList实现类来演示
public class CollectionMethod {@SuppressWarnings({"all"})public static void main(String[] args) {List list = new ArrayList();//1.add:添加单个元素list.add("jack");list.add(10);//list.add(new Integer(10))list.add(true);System.out.println("list="+list);//2.remove:删除指定元素//list.remove(0);//删除第一个元素list.remove("jack");//指定删除某个元素System.out.println("list="+list);//3.contains:查找元素是否存在System.out.println(list.contains("jack"));//t//4.size:获取元素个数System.out.println(list.size());//2//5.isEmpty:判断是否为控股System.out.println(list.isEmpty());//f//6.clear:清空list.clear();System.out.println("list="+list);//list=[]//7.addAll:添加多个元素ArrayList list2 = new ArrayList();list2.add("红楼梦");list2.add("三国演义");list.addAll(list2);System.out.println("list="+list);//8.containsAll:查找多个元素是否都存在System.out.println(list.containsAll(list2));//t//9.removeAll:删除多个元素list.add("聊斋");list.removeAll(list2);System.out.println("list="+list);//[聊斋]}
}
基本介绍
1.Iterator对象称为迭代器,主要用于遍历Collection 集合中的元素。
2.所有实现了Collection接口的集合类都有一个iterator()方法,用以返回一个
实现了Iterator接口的对象,既可以返回一个迭代器。
3.Iterator 的接口
4.Iterator 仅用于遍历集合,Iterator 本身并不存放对象
提示:在调用iterator.next()方法之前必须要调用iterator.hasNext()进行检测。
若不调用,且下一个记录无效,直接调用it.next()会抛出
NoSuchElementException异常
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;public class CollectionIterator {@SuppressWarnings({"all"})public static void main(String[] args) {Collection col = new ArrayList();col.add(new Book("三国演义","罗贯中",10.1));col.add(new Book("小李飞刀","古龙",5.1));col.add(new Book("红楼梦","曹雪芹",34.3));//System.out.println("col="+col);//遍历col集合//1.先得到col对应的 迭代器Iterator iterator = col.iterator();//2.使用while 循环遍历即可while(iterator.hasNext()){//判断是否还有数据//返回下一个元素,类型是ObjectObject obj = iterator.next();System.out.println("obj="+obj);}//3.当退出while循环后,这时iterator迭代器,指向最后的迭代器// iterator.next();//NoSuchElementException//4.如果希望再次遍历,需要重置迭代器iterator=col.iterator();System.out.println("==第二次遍历==");while (iterator.hasNext()) {Object obj = iterator.next();System.out.println("obj="+obj);}}
}class Book{private String s1;private String s2;private double d1;public Book(String s1, String s2, double d1) {this.s1 = s1;this.s2 = s2;this.d1 = d1;}public String getS1() {return s1;}public void setS1(String s1) {this.s1 = s1;}public String getS2() {return s2;}public void setS2(String s2) {this.s2 = s2;}public double getD1() {return d1;}public void setD1(double d1) {this.d1 = d1;}@Overridepublic String toString() {return"s1='" + s1 + '\'' +", s2='" + s2 + '\'' +", d1=" + d1;}
}