当前位置: 首页 > news >正文

网站备案需要材料搜索关键词排名推广

网站备案需要材料,搜索关键词排名推广,wordpress 本机安装目录,网页设计报价怎么做Java LinkedList(链表)语法知识点及案例代码 一、LinkedList概述 LinkedList是Java集合框架中的一个类,位于java.util包中。它实现了List、Deque、Queue等接口,提供了链表数据结构的实现。链表是一种线性数据结构,其…

Java LinkedList(链表)语法知识点及案例代码

一、LinkedList概述

LinkedList是Java集合框架中的一个类,位于java.util包中。它实现了List、Deque、Queue等接口,提供了链表数据结构的实现。链表是一种线性数据结构,其中每个元素都是一个节点,节点包含数据和指向下一个节点的引用。LinkedList是一个双向链表,每个节点除了指向下一个节点外,还指向前一个节点。

二、LinkedList的特点
  • 动态大小:链表的大小是动态变化的,不需要预先分配固定大小的内存。
  • 高效的插入和删除操作:在链表中间进行插入和删除操作的时间复杂度为O(1)(在已知节点位置的情况下)。
  • 随机访问效率低:访问链表中任意位置的元素需要从头开始遍历,时间复杂度为O(n)。
三、LinkedList的常见方法
  1. 构造方法

    • LinkedList():创建一个空的LinkedList。
    • LinkedList(Collection<? extends E> c):使用指定的集合来创建LinkedList。
  2. 添加元素

    • void add(E e):在链表末尾添加元素。
    • void add(int index, E element):在链表的指定位置插入元素。
    • void addFirst(E e):在链表的开头添加元素。
    • void addLast(E e):在链表的末尾添加元素。
  3. 删除元素

    • E remove():删除并返回链表的第一个元素。
    • E remove(int index):删除链表中指定位置的元素。
    • boolean remove(Object o):删除链表中指定的元素(如果存在)。
    • E removeFirst():删除并返回链表的第一个元素。
    • E removeLast():删除并返回链表的最后一个元素。
  4. 访问元素

    • E get(int index):返回链表中指定位置的元素。
    • E getFirst():返回链表的第一个元素。
    • E getLast():返回链表的最后一个元素。
  5. 检查元素

    • boolean contains(Object o):检查链表中是否包含指定的元素。
  6. 查找元素位置

    • int indexOf(Object o):返回链表中第一次出现指定元素的索引位置。
    • int lastIndexOf(Object o):返回链表中最后一次出现指定元素的索引位置。
  7. 其他方法

    • int size():返回链表中元素的数量。
    • void clear():清空链表中的所有元素。
    • boolean isEmpty():检查链表是否为空。
    • Iterator<E> iterator():返回链表的迭代器。
    • ListIterator<E> listIterator():返回链表的列表迭代器。
    • ListIterator<E> listIterator(int index):返回从指定位置开始的列表迭代器。
四、案例代码

以下是一个简单的Java程序,展示了如何使用LinkedList及其常见方法。

import java.util.LinkedList;
import java.util.Iterator;
import java.util.ListIterator;public class LinkedListExample {public static void main(String[] args) {// 创建一个LinkedList对象LinkedList<String> linkedList = new LinkedList<>();// 添加元素到链表末尾linkedList.add("苹果");linkedList.add("香蕉");linkedList.add("橙子");// 在指定位置插入元素linkedList.add(1, "葡萄");// 访问元素String fruit = linkedList.get(2);System.out.println("索引为2的元素: " + fruit); // 输出: 索引为2的元素: 葡萄// 删除元素String removedFruit = linkedList.remove(0);System.out.println("移除的元素: " + removedFruit); // 输出: 移除的元素: 苹果// 获取链表的大小int size = linkedList.size();System.out.println("大小: " + size); // 输出: 大小: 3// 检查链表是否为空boolean empty = linkedList.isEmpty();System.out.println("是否为空: " + empty); // 输出: 是否为空: false// 检查链表是否包含指定元素boolean contains = linkedList.contains("香蕉");System.out.println("是否包含香蕉: " + contains); // 输出: 是否包含香蕉: true// 使用Iterator遍历Iterator<String> iterator = linkedList.iterator();while (iterator.hasNext()) {System.out.println(iterator.next());}// 使用ListIterator遍历和修改ListIterator<String> listIterator = linkedList.listIterator();while (listIterator.hasNext()) {String element = listIterator.next();if (element.equals("葡萄")) {listIterator.set("草莓"); // 修改元素}}// 输出修改后的链表System.out.println("修改后的链表: " + linkedList); // 输出: 修改后的链表: [香蕉, 草莓, 橙子]// 清空链表linkedList.clear();System.out.println("清空后的链表是否为空: " + linkedList.isEmpty()); // 输出: 清空后的链表是否为空: true}
}
五、总结

LinkedList是一个强大的数据结构,适用于在列表中间频繁进行插入和删除操作的场景。通过掌握其常见方法和特点,可以更加高效地处理链表相关的编程问题。

当然可以,以下是一些关于Java中LinkedList的具体案例,涵盖了LinkedList的构造、元素增删、查找、遍历等操作:

案例一:LinkedList的基本构造与元素增删

import java.util.LinkedList;public class LinkedListExample {public static void main(String[] args) {// 构造一个空的LinkedListLinkedList<Integer> list = new LinkedList<>();// 尾插法添加元素list.add(1);list.add(2);list.add(3);// 在指定位置插入元素list.add(1, 4); // 在索引1的位置插入4// 删除元素list.remove(2); // 删除索引为2的元素,即3list.removeFirst(); // 删除第一个元素,即1list.removeLast(); // 删除最后一个元素// 打印链表内容System.out.println(list); // 输出:[4]}
}

案例二:LinkedList的查找与修改

import java.util.LinkedList;public class LinkedListSearchAndModify {public static void main(String[] args) {// 构造一个LinkedList并添加元素LinkedList<String> list = new LinkedList<>();list.add("apple");list.add("banana");list.add("cherry");// 查找元素int index = list.indexOf("banana"); // 查找"banana"的索引位置if (index != -1) {System.out.println("banana的索引位置是:" + index);} else {System.out.println("未找到元素banana");}// 修改元素list.set(1, "blueberry"); // 将索引为1的元素修改为"blueberry"// 打印链表内容System.out.println(list); // 输出:[apple, blueberry, cherry]}
}

案例三:LinkedList的遍历

import java.util.LinkedList;
import java.util.Iterator;
import java.util.ListIterator;
public class LinkedListIteration {public static void main(String[] args) {// 构造一个LinkedList并添加元素LinkedList<String> list = new LinkedList<>();list.add("dog");list.add("cat");list.add("bird");// 使用普通for循环遍历for (int i = 0; i < list.size(); i++) {System.out.println(list.get(i));}// 使用增强for循环遍历for (String element : list) {System.out.println(element);}// 使用Iterator遍历Iterator<String> iterator = list.iterator();while (iterator.hasNext()) {System.out.println(iterator.next());}// 使用ListIterator遍历,并演示反向遍历ListIterator<String> listIterator = list.listIterator();while (listIterator.hasNext()) {System.out.println(listIterator.next());}System.out.println("反向遍历:");while (listIterator.hasPrevious()) {System.out.println(listIterator.previous());}}
}

案例四:LinkedList作为队列使用

import java.util.LinkedList;public class LinkedListAsQueue {public static void main(String[] args) {// 构造一个空的LinkedList作为队列LinkedList<String> queue = new LinkedList<>();// 入队操作queue.addLast("task1");queue.addLast("task2");queue.addLast("task3");// 出队操作并打印System.out.println(queue.removeFirst()); // 输出:task1System.out.println(queue.pollFirst()); // 输出:task2,pollFirst在队列为空时返回null,避免异常// 打印剩余队列内容System.out.println(queue); // 输出:[task3]}
}

这些案例展示了LinkedList在Java中的基本用法,包括构造链表、添加和删除元素、查找和修改元素、遍历链表以及将链表作为队列使用等场景。通过这些案例,可以更好地理解和掌握LinkedList的使用。

http://www.ds6.com.cn/news/5250.html

相关文章:

  • 做婚纱摄影网站价格今日热搜榜官网
  • hao123网站用什么程序做的外贸平台有哪些
  • 做爰全过程免费视频网站app制作公司
  • 做cps的网络文学网站app推广在哪里可以接单
  • 咸阳做网站公司电话免费的舆情网站入口在哪
  • 租赁服务器的网站廊坊seo排名外包
  • 不锈钢网站样板山东济南seo整站优化公司
  • 网站源码在线提取站长素材网站官网
  • 网站维护的意义矿泉水软文广告500字
  • 温州cms模板建站cdq百度指数
  • 北京app建设 网站开发公司查关键词热度的网站
  • 设计模板免费网站产品怎么优化
  • 郑州网站加工seo自媒体培训
  • 佳木斯网站制作注册公司
  • 日语网站建设市场it培训机构培训费用
  • 广州海珠区网站建设制作一个网站的全过程
  • 包装设计作品百度网站排名优化
  • 做网站有必要?网店运营教学
  • 广州网站定制开发公司哪家好石家庄seo顾问
  • 网站背景音乐怎么做线上推广引流渠道
  • psd网站首页图片网络营销策划
  • 新手做网站的详细步骤网络商城应该如何推广
  • 金坛网站建设公司在线优化网站
  • wordpress子站点404市场营销毕业后找什么工作
  • 网站渗透入侵全部教程企业网站推广模式
  • 建设热电偶网站网推项目平台
  • 杭州电商直播培训班上海百度推广优化
  • 大型服装网站开发网络营销师月薪
  • 网站建设如果登录失败行业关键词搜索排名
  • 网站 被刷流量网络销售的好处和意义