一,迭代器
1,Iterator 迭代器接口,Collection提供Iterator方法来获取Iterator接口的实现对象
2,常用API:
boolean hasNext()判断集合中是否由下一个元素
E next()取出下一个元素
void remove() 删除取出的元素
注意:使用迭代器期间,不能使用集合的删除,增加的方法,能用迭代器中的删除方法
增强for循环的底层是迭代器,可以对数组和集合进行遍历
二,泛型机制
1,在jdk1.5之后新增的特性。其作用就是对集合进行“参数化类型”。因为在jdk1.5之前使用集合时经常需要向下造型,
错误的可能性很大。有了这个新特性,集合就可以规定元素的类型,编译器在集合进行增删操作时,检查元素是否匹配。避免了很多错误。
2,集合框架里所有类型都添加了泛型机制。
3,如何定义泛型
在定义类时,在类名后添加<E>
三,集合的工具类:Collections
1,提供了很多方法(大多数是静态的),如对集合排序的方法sort()
2,如果集合想排序,那么集合必须实现comparable接口且需要重写其中的compareTo(E e)方法
3,我们可以通过此方法进行自定义排序规则
sort():底层是元素调用compareTo()与另外一个元素
*Collection.sort(l);参数是List集合,会自动调用集合泛型中compareTo(E e)方法(此方法规定比较的规则),且此泛型必须是实现Comparable接口的
*还可以自己临时通过比较器Comparetor接口修改排序的规则,通过匿名内部类重写此接口中的compare(E e1,E e2)方法来设定排序的规则
然后用Collection.sort(l,匿名内部类对象的名字)