Java基础篇之LinkedList类
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类相关推荐
- Java基础篇之常用类(1)
目录 常用API: Scanner: object类: to String()方法: equals()方法: String类: String类创建对象的特点: String练习之模拟用户登录: Str ...
- Java基础篇:常用类
文章目录 1.字符串相关的类 1.1 String类及常用方法 String的特性 String对象的创建 字符串对象是如何存储的 String使用陷阱 String常用方法 1.2 StringBu ...
- 【JAVA基础篇】String类详解
昨天参加了一场机试,发现自己居然对String类的api不熟了,所以今天来总结一下(基于JDK1.8). 1.父类和实现的接口 没有父类,或者说父类是Object 接口:Serializable.Co ...
- JAVA基础篇【工具类】MathUtil 数学运算辅助类TG【20130324整理】
数学运算辅助类,希望对大家有所帮助 import java.math.BigDecimal; /** * 数学运算辅助类. * * @author Elfy * @date 2013年03月21日 * ...
- 菜鸟学习笔记:Java基础篇7(包装类、时间相关类、文件类、异常处理类)
菜鸟学习笔记:Java其他常用类 基本数据类型包装类 时间处理和文件处理相关类 Date时间类 SimpleDateFormat Calendar日历类 文件类 异常机制 异常的概念 Java异常处理 ...
- Java基础篇——类与子类
1. 什么是类,什么是子类? 类:类是Java程序的基本要素,一个Java应用程序就是由若干个类所构成的.类是Java语言中最重要的"数据类型". 子类:由继承得到的类叫子类. 引 ...
- Java基础篇--设计模式
目录 前言 设计模式 创建型模式 单例模式 工厂方法模式 抽象工厂模式 建造者模式 原型模式 结构型模式 适配器模式 桥接模式 组合模式 装饰模式 外观模式 亨元模式 代理模式 行为型模式: 访问者模 ...
- 《Java 后端面试经》Java 基础篇
<Java 后端面试经>专栏文章索引: <Java 后端面试经>Java 基础篇 <Java 后端面试经>Java EE 篇 <Java 后端面试经>数 ...
- Java基础篇1——变量与数据类型
Java基础篇1--变量与数据类型 1.标识符命名规则 标识符以由大小写字母.数字.下划线(_)和美元符号($)组成,但是不能以数字开头. 大小写敏感 不能与Java语言的关键字重名 不能和Java类 ...
最新文章
- HAAR、LBP分类器训练
- 多媒体技术 PI 第一期:OSS 圆桌预告
- 关于字符集--总结,补遗以及问题
- oracle 基本异常的练习及各个错误码
- 交叉编译openssl不修改Makefile的方法
- 魅族魅蓝5s详细开启Usb调试模式的流程
- 模型相关:SolidWorks创建Cube模型,在3DMax中给不同面添加不同颜色,导出自带纹理的FBX至Unity
- linux对硬盘进行分区吗,linux对4T硬盘进行分区
- android封装全局调用的toast_自定义Toast,解决系统Toast存在的问题
- Revit族库管理系统
- 校园联通网使用沃派开wifi完美破解
- 做Gabor滤波器图片
- 搜狗微信公众号文章搜索器---网赚必备工具
- 推荐一个特别好用的软件,简直就是懒人神器,强迫症的福音
- 嫉妒心太强该怎么办?
- Python分析一下双色球,中大奖指日可待
- 三颗锦囊用完,苹果新iPad今年挡得住两大集团军吗?
- 传小米第一款车售价超30万元;苹果操作系统首次打败安卓,市场份额超过50%;TensorFlow 2.8.3 发布|极客头条
- Android部分手机在使用EditText进行自动联想时会先输入拼音的问题
- 第六章 Linux实际操作——实用指令