java:LinkedList的基本使用、特征、源码的解读

本文介绍了Java中的LinkedList数据结构,它基于链表实现,提供了高效的插入和删除操作,但随机访问性能较差。LinkedList是有序的,可重复插入,支持null元素。它还实现了栈和队列的操作,可作为栈、队列和双端队列使用。源码解读显示LinkedList继承了AbstractSequentialList,实现了List、Deque和Queue接口,底层结构为双向链表。
摘要由CSDN通过智能技术生成

LinkedList的基本使用

LinkedList 是 Java 集合中比较常用的数据结构,与 ArrayList 一样,实现了 List 接口,只不过 ArrayList 是基于数组实现的,而 LinkedList 是基于链表实现的。所以 LinkedList 插入和删除方面要优于 ArrayList,而随机访问上则 ArrayList 性能更好。

常用方法:

public boolean add(Object element)
向链表末尾添加一个新节点,该节点中的数据是参数element指定的对象

public void add(int index,Object element)
向链表指定位置添加一个新节点,该节点中的数据是参数element指定的对象

public void addFirist(Object element)
向链表表头添加一个新节点,该节点中的数据是参数element指定的对象

public void addLast(Object element)
向链表表尾添加一个新节点,该节点中的数据是参数element指定的对象

public  Object removeFirst()
删除第一个节点并返回这个节点中的对象

public  Object removeLast()
删除最后一个节点并返回这个节点中的对象

public Object remove(int index)
删除指定位置的节点

public Object get(int index)
得到指定位置的节点

public Object getFirst()
得到链表第一个节点的对象

public Object getLast()
得到链表最后一个节点的对象

int indexOf(Object element) 
返回节点对象element在链表中首次出现的位置,如果链表中无此节点的对象则返回-1

public int lastIndexOf(Object element)
返回节点对象element在链表中最后出现的位置,如果链表中无
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值