List集合:有序,可重复的存储数据
A:添加功能
void add(int index,Object element):在指定位置添加元素
B:获取功能
Object get(int index):获取指定位置的元素
C:列表迭代器
ListIterator listIterator():List集合特有的迭代器;该迭代器继承了Iterator迭代器,迭代器依赖集合而存在
- Object previous():获取上一个元素
- boolean hasPrevious():判断是否有元素
D:删除功能
Object remove(int index):根据索引删除元素,返回被删除的元素
E:修改功能
Object set(int index,Object element):根据索引修改元素,返回被修饰的元素
size():集合长度
// 创建集合对象
List list = new ArrayList();
list.add("1");
list.add("2");
list.add("3");
list.add("4");
System.out.println(list);
System.out.println("---add----");
list.add(0, 0);
System.out.println(list);
System.out.println("----get---");
System.out.println(list.get(0));
System.out.println("--remove----");
System.out.println(list.remove(0));
System.out.println(list);
System.out.println("----set---");
System.out.println(list.set(1,10));
System.out.println(list);
System.out.println("-----size--------");
System.out.println(list.size());
System.out.println(list);
System.out.println("------iterator--------");
for(Iterator it=list.iterator();it.hasNext();){
System.out.print(it.next()+" ");
}
System.out.println();
System.out.println("--listIterator------");
ListIterator lit = list.listIterator(); // 子类对象
while (lit.hasNext()) {
System.out.print(lit.next()+ " ");
}
System.out.println();
System.out.println("-----------------");
//只有lit前面有值,才能使用previous
while (lit.hasPrevious()) {
//迭代器遍历元素的时候,通过集合是不能修改元素的。
// list.add("迭代器遍历元素的时候,通过集合是不能修改元素的");//Exception in thread "main" java.util.ConcurrentModificationException
System.out.print(lit.previous()+" ");
}
}
输出:
[1, 2, 3, 4]
---add----
[0, 1, 2, 3, 4]
----get---
0
--remove----
0
[1, 2, 3, 4]
----set---
2
[1, 10, 3, 4]
-----size--------
4
[1, 10, 3, 4]
------iterator--------
1 10 3 4
--listIterator------
1 10 3 4
-----------------
4 3 10 1