List的继承结构
其中,红色为接口,蓝色为实现类
List的四大方法
List的基本操作
void add(int index,E e)
boolean remove(Object o)
E remove(int index)
E set(int index,E e)
E get(int index)
其中注意删除方法有两种,执行的时候主要选择实参和形参类型一致的那个方法,可以是索引也可以是具体数值。
使用示例
List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
Integer r = Integer.valueOf(1);
boolean remove = list.remove(r);
System.out.println(remove);
list.set(1, 4);
List的五种遍历方法
List的五种遍历方法
1. 通过迭代器遍历
2. 通过ListIterator遍历
3. 通过增强for循环遍历
4. 通过Lambda表达式遍历
5. 通过普通for循环遍历
1.迭代器遍历
List<String> list = new ArrayList<>();
list.add("a");
list.add("b");
list.add("c");
//1.迭代器遍历
Iterator<String> it = list.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
2.列表重构的特殊迭代器
看似和上一个迭代器没什么区别但是,多了一些特殊方法:
可以指针从后往前移动
可以添加元素
List<String> list = new ArrayList<>();
list.add("a");
list.add("b");
list.add("c");
//2.列表迭代器遍历
ListIterator<String> it = list.listIterator();
while (it.hasNext()) {
System.out.println(it.next());
}
3.增强For循环
List<String> list = new ArrayList<>();
list.add("a");
list.add("b");
list.add("c");
//3.增强for循环
for (String s : list) {
System.out.println(s);
}
4.Lambda表达式遍历
List<String> list = new ArrayList<>();
list.add("a");
list.add("b");
list.add("c");
//Lambda表达式遍历
list.forEach(System.out::println);
5.普通for循环遍历
List<String> list = new ArrayList<>();
list.add("a");
list.add("b");
list.add("c");
//普通for循环遍历
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
各种遍历方法适用的场景
迭代器遍历:需要删除元素
列表迭代器:需要添加元素
for循环和Lambda:仅仅想要遍历 list