List集合
List集合:元素可以发生重复,有序(指存储和取出的顺序一致)
Collection【接口】:
- List【接口】
ArrayList
- Set【接口】
成员方法
List集合中特有的成员方法:
void add(int index,E element)
E remove(int index)
E get(int index)
E set(int index,E element)
ListIterator listIterator()
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
public class ListDemo1 {
public static void main(String[] args) {
List list1 = new ArrayList();
list1.add("hello");
list1.add("apple");
list1.add("banana");
list1.add("watermelon");
list1.add("mango");
System.out.println("list1: " + list1);
System.out.println("==================================");
list1.add(2,"grape");
System.out.println("list1: " + list1);
System.out.println("==================================");
System.out.println(list1.remove(2));
System.out.println("list1: " + list1);
System.out.println("==================================");
System.out.println(list1.get(3));
System.out.println("list1: " + list1);
System.out.println("==================================");
System.out.println(list1.set(3, "orange"));
System.out.println("list1: " + list1);
System.out.println("==================================");
ListIterator listIterator = list1.listIterator();
while (listIterator.hasNext()){
System.out.println(listIterator.next());
}
System.out.println("==================================");
while (listIterator.hasPrevious()){
System.out.println(listIterator.previous());
}
}
}
Test
/*
需求:遍历集合,当遇到mango的时候,向集合中添加一个元素"java"
我们发现如果使用迭代器遍历,集合发生修改的话,报错了
ConcurrentModificationException
*/
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;
public class ListDemo2 {
public static void main(String[] args) {
List list1 = new ArrayList();
list1.add("hello");
list1.add("apple");
list1.add("banana");
list1.add("watermelon");
list1.add("mango");
list1.add("peach");
list1.add("pear");
System.out.println("list1: " + list1);
System.out.println("======================================");
ListIterator listIterator = list1.listIterator();
while (listIterator.hasNext()) {
Object obj = listIterator.next();
String s = (String) obj;
if ("mango".equals(s)) {
listIterator.add("java");
}
}
System.out.println("list1: " + list1);
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!