LinkedList类扩展AbstractSequentialList并执行List接口。它提供了一个链接列表数据结构。它具有如下的两个构造函数,说明如下:

LinkedList( )
LinkedList(Collection c)

第一个构造函数建立一个空的链接列表。第二个构造函数建立一个链接列表,该链接列表由类集c中的元素初始化。

除了它继承的方法之外,LinkedList类本身还定义了一些有用的方法,这些方法主要用于操作和访问列表。使用addFirst( )方法可以在列表头增加元素;使用addLast( )方法可以在列表的尾部增加元素。它们的形式如下所示:

void addFirst(Object obj)
void addLast(Object obj)

这里,obj是被增加的项。

调用getFirst( )方法可以获得第一个元素。调用getLast( )方法可以得到最后一个元素。它们的形式如下所示:

Object getFirst( )
Object getLast( )

为了删除第一个元素,可以使用removeFirst( )方法;为了删除最后一个元素,可以调用removeLast( )方法。它们的形式如下所示:

Object removeFirst( )
Object removeLast( )

下面的程序举例说明了几个LinkedList支持的方法。

// Demonstrate LinkedList.
import java.util.*;
class LinkedListDemo { public static void main(String args[]) { // create a linked list LinkedList ll = new LinkedList(); // add elements to the linked list ll.add("F"); ll.add("B"); ll.add("D"); ll.add("E"); ll.add("C"); ll.addLast("Z"); ll.addFirst("A"); ll.add(1, "A2"); System.out.println("Original contents of ll: " + ll); // remove elements from the linked list ll.remove("F"); ll.remove(2); System.out.println("Contents of ll after deletion: " + ll); // remove first and last elements ll.removeFirst(); ll.removeLast(); System.out.println("ll after deleting first and last: " + ll); // get and set a value Object val = ll.get(2); ll.set(2, (String) val + " Changed"); System.out.println("ll after change: " + ll); }
}

该程序的输出如下所示:

Original contents of ll: [A, A2, F, B, D, E, C, Z]
Contents of ll after deletion: [A, A2, D, E, C, Z]
ll after deleting first and last: [A2, D, E, C]
ll after change: [A2, D, E Changed, C]

因为LinkedList实现List接口,调用add(Object)将项目追加到列表的尾部,如同addLast( )方法所做的那样。使用add( )方法的add(int, Object)形式,插入项目到指定的位置,如例子程序中调用add(1,“A2”)的举例。

注意如何通过调用get( )和set( )方法而使得ll中的第三个元素发生了改变。为了获得一个元素的当前值,通过get( )方法传递存储该元素的下标值。为了对这个下标位置赋一个新值,通过set( )方法传递下标和对应的新值。

Java基础篇之LinkedList类相关推荐

  1. Java基础篇之常用类(1)

    目录 常用API: Scanner: object类: to String()方法: equals()方法: String类: String类创建对象的特点: String练习之模拟用户登录: Str ...

  2. Java基础篇:常用类

    文章目录 1.字符串相关的类 1.1 String类及常用方法 String的特性 String对象的创建 字符串对象是如何存储的 String使用陷阱 String常用方法 1.2 StringBu ...

  3. 【JAVA基础篇】String类详解

    昨天参加了一场机试,发现自己居然对String类的api不熟了,所以今天来总结一下(基于JDK1.8). 1.父类和实现的接口 没有父类,或者说父类是Object 接口:Serializable.Co ...

  4. JAVA基础篇【工具类】MathUtil 数学运算辅助类TG【20130324整理】

    数学运算辅助类,希望对大家有所帮助 import java.math.BigDecimal; /** * 数学运算辅助类. * * @author Elfy * @date 2013年03月21日 * ...

  5. 菜鸟学习笔记:Java基础篇7(包装类、时间相关类、文件类、异常处理类)

    菜鸟学习笔记:Java其他常用类 基本数据类型包装类 时间处理和文件处理相关类 Date时间类 SimpleDateFormat Calendar日历类 文件类 异常机制 异常的概念 Java异常处理 ...

  6. Java基础篇——类与子类

    1. 什么是类,什么是子类? 类:类是Java程序的基本要素,一个Java应用程序就是由若干个类所构成的.类是Java语言中最重要的"数据类型". 子类:由继承得到的类叫子类. 引 ...

  7. Java基础篇--设计模式

    目录 前言 设计模式 创建型模式 单例模式 工厂方法模式 抽象工厂模式 建造者模式 原型模式 结构型模式 适配器模式 桥接模式 组合模式 装饰模式 外观模式 亨元模式 代理模式 行为型模式: 访问者模 ...

  8. 《Java 后端面试经》Java 基础篇

    <Java 后端面试经>专栏文章索引: <Java 后端面试经>Java 基础篇 <Java 后端面试经>Java EE 篇 <Java 后端面试经>数 ...

  9. Java基础篇1——变量与数据类型

    Java基础篇1--变量与数据类型 1.标识符命名规则 标识符以由大小写字母.数字.下划线(_)和美元符号($)组成,但是不能以数字开头. 大小写敏感 不能与Java语言的关键字重名 不能和Java类 ...

最新文章

  1. HAAR、LBP分类器训练
  2. 多媒体技术 PI 第一期:OSS 圆桌预告
  3. 关于字符集--总结,补遗以及问题
  4. oracle 基本异常的练习及各个错误码
  5. 交叉编译openssl不修改Makefile的方法
  6. 魅族魅蓝5s详细开启Usb调试模式的流程
  7. 模型相关:SolidWorks创建Cube模型,在3DMax中给不同面添加不同颜色,导出自带纹理的FBX至Unity
  8. linux对硬盘进行分区吗,linux对4T硬盘进行分区
  9. android封装全局调用的toast_自定义Toast,解决系统Toast存在的问题
  10. Revit族库管理系统
  11. 校园联通网使用沃派开wifi完美破解
  12. 做Gabor滤波器图片
  13. 搜狗微信公众号文章搜索器---网赚必备工具
  14. 推荐一个特别好用的软件,简直就是懒人神器,强迫症的福音
  15. 嫉妒心太强该怎么办?
  16. Python分析一下双色球,中大奖指日可待
  17. 三颗锦囊用完,苹果新iPad今年挡得住两大集团军吗?
  18. 传小米第一款车售价超30万元;苹果操作系统首次打败安卓,市场份额超过50%;TensorFlow 2.8.3 发布|极客头条
  19. Android部分手机在使用EditText进行自动联想时会先输入拼音的问题
  20. 第六章 Linux实际操作——实用指令

热门文章

  1. [转载] 6.3 cmath--数学函数
  2. catch(…) vs catch(CException *)?
  3. transient、Externalizable
  4. 判断一个网站用什么服务器
  5. QT连接MySQL记录
  6. C/C++语言课程设计任务书
  7. DB2 9 运用开拓(733 测验)认证指南,第 4 部门: 嵌入式 SQL 编程(4)
  8. 精通PHP的十大要点
  9. 数据结构上机实践第四周项目1 - 建立单链表
  10. 简述L4无人驾驶的发展