文章目录
- 本节总结知识网思维导图
- 一、特点
- 二、遍历
- 1.fori
- 2.foreach
- 3.iterator(迭代器)
- 三、LinkedList
- 四、增长因子论证
- 五、集合框架ArrayList中的重复元素去重原理
- 总结
本节总结知识网思维导图

一、特点

- ?相当于一个容器的增删改查
- list集合长度是不固定的
- 有序并且可以添加徒步元素
- 可重复
示例代码块:?
package com.xhy.list;
import java.util.ArrayList;
import java.util.List;
public class demol01 {
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
// 增加
list.add("a");
list.add("b");
list.add("c");
list.add("d");
System.out.println("现有的集合元素有:" + list);
// 重复:
list.add("b");
System.out.println("现有的集合元素有:" + list);
// 移除:
list.remove(0);
System.out.println("现有的集合元素有:" + list);
// 查:
System.out.println(list.get(0));
// 改:
list.set(0, "d");
System.out.println("现有的集合元素有:" + list);
}
}
①可增加:
?结果如下:

?②可重复:前面代码后面直接加
?结果如下:

?③可删:

④可改 :

?⑤可查:

?
二、遍历
1.fori
代码如下(示例):?
for (int i = 0; i <list.size(); i++) {
System.out.println(list.get(i));
}
2.foreach
代码如下(示例):
for (String s : list) {
System.out.println(s);
}
?3.iterator(迭代器)
代码如下(示例):
Iterator<String> it=list.iterator();
while(it.hasNext()) {
System.out.println(it.next());
}
错误代码示例:?
?Iterator it = a1.iterator();
while(it.hasNext()) {
Object obj = it.next();
a1.remove(obj);
}

?原因:
?出现了并发问题。两个对象同时操作了同一个变量,所以不能这样删除集合里的元素
?演示结果如下:

三、LinkedList
四、增长因子论证
五、集合框架ArrayList中的重复元素去重原理
总结
|