Collection有两个子接口:List Set
List集合的特点:
有序的 (存储和取出一致),可以允许重复元素
Set集合的特点:
无序性(不能保证迭代的顺序,基于hashMap),并且元素不能重复
List集合的特有功能:
添加功能
void add(int index,Object element):在指定位置处添加指定元素
获取功能
Object get(int index)返回列表中指定位置的元素。
ListIterator listIterator():列表迭代器
删除功能:
Object remove(int index):删除指定位置处的元素
修改功能
Object set(int index, Object element):用指定element元素替换掉指定位置处的元素
ListIterator listIterator():列表迭代器 (List集合的专有迭代遍历:列表迭代器)
ListIterator常用方法:
boolean hasNext() :判断是否有下一个可以迭代的元素(正向遍历)
Object next():获取下一个元素
boolean hasPrevious():判断是否有上一个可以迭代 元素(逆向遍历)
Object previous():返回上一个元素
注意:逆向迭代(遍历),单独使用没意义,前提,要先正向遍历
public class ListIteratorDemo {
public static void main(String[] args) {
List list=new ArrayList();
list.add("hello");
list.add("world");
list.add("java");
ListIterator li=list.listIterator();
while(li.hasNext()) {
String s=(String)li.next();
System.out.println(s);
}
System.out.println("-----------------");
while(li.hasPrevious()) {
String s1=(String)li.previous();
System.out.println(s1);
}
}
}
也可以使用size()和get(int index)相结合,普通for循环的方式进行遍历
public class ListDemo {
public static void main(String[] args) {
List l=new ArrayList();
l.add("hello");
l.add("world");
l.add("java");
for(int i=0;i<l.size();i++) {
System.out.println(l.get(i));
}
}
}