您现在的位置是:首页 > Java 当前栏目 Java基础(LinkedList) JAVA 基础 2023-03-02 11:10:49 时间 ### 一、LinkedList概述 ### ArrayList 集合在查询元素时速度很快,但在删除时效率较低,为了克服这种局限性,可以使用LinkedList。 LinkedList内部维护了一个**双向循环链表**,链表中的每一个元素彼此相连起来。插入和删除元素只需要修改元素之间的应用关系即可。 特点: 1. 增删效率很高 2. 查询效率低 ### 二、LinkedList特有方法 ### ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNjc5ODE4_size_16_color_FFFFFF_t_70][] 示例: LinkedList<String> list=new LinkedList<>(); list.add("yyy"); list.add("wtc"); list.add("yyy"); //特有的方法 list.addFirst("aaa");//添加到列头 list.addLast("bbb");//添加到列尾 System.out.println(list); list.removeFirst();//删除列头 list.removeLast();//删除列尾 System.out.println(list); //寻找某个字符串最后出现的位置 System.out.println("yyy最后出现的位置是"+list.lastIndexOf("yyy")); //推荐用迭代器去遍历 ListIterator<String> it= list.listIterator(); while (it.hasNext()){ System.out.println(it.next()); } 运行结果: ![20190721100535911.png][] ### 三、练习题 ### * 移除ArrayList中的重复元素 import java.util.ArrayList; public class demo_移除arraylist里的重复元素 { public static void main(String[] args) { ArrayList<String> list=new ArrayList<>(); list.add("a"); list.add("b"); list.add("c"); list.add("b"); list.add("a"); list.add("b"); list.add("a"); list.add("b"); for(int i=0;i<list.size();i++){ String s=list.get(i); for(int j=i+1;j<list.size();j++){ String s1=list.get(j); if(s.equals(s1)){ list.remove(j); j--; } } } System.out.println(list); } } 运行结果: ![20190721101922287.png][] * ArrayList嵌套ArrayList import java.util.ArrayList; public class demo_Arraylist嵌套Arraylist { public static void main(String[] args) { ArrayList a1=new ArrayList(); a1.add("小米"); a1.add("小明"); a1.add("小红"); ArrayList a2=new ArrayList(); a2.add("wtc"); a2.add("yyy"); ArrayList<ArrayList> aa=new ArrayList<>(); aa.add(a1); aa.add(a2); for(int i=0;i<aa.size();i++){ ArrayList arrayList=aa.get(i); for(int j=0;j<arrayList.size();j++){ System.out.println(arrayList.get(j)); } } } } 运行结果: ![20190721103036816.png][] [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNjc5ODE4_size_16_color_FFFFFF_t_70]: /images/20210920/2a96f9cbb6ec4888a5f27c81b34c6835.png [20190721100535911.png]: /images/20210920/90c4bd513a84437e948b23a4d3903e08.png [20190721101922287.png]: /images/20210920/487acbcb9e2544f7bfef53512653e9b4.png [20190721103036816.png]: /images/20210920/4849b887dad14b92ac30fdea07648b4a.png 本文地址: Java基础(LinkedList) 相关文章 Java8 Optional Java 删除文件夹 JAVA 枚举 java 中文路径 Java代码规范 java_if else Java控制台输出 Java三元运算符 JAVA 三元运算符 Java使用WebSocket Java - TreeSet简介 Java集合-TreeSet java.util.HashSet Java异常处理 java链表 Java内存区域 Java内存区域 java 导出excel JAVA 百分比率 Java镜像构建