java-LinkedList 所有方法介绍

LinkedList是一个双向链表,一般可以把它当成栈和队列使用。详细源码分析看这里
链表主要维护3个成员:第一个元素;最后一个元素;以及链表长度。

所有方法如下:

增加删除查找修改
push, addFirst, linkedFirst, offerFirstpop, remove, removeFirst, poll, pollFirstgetFirst,peekX
add, offer, addLast, linkedLast, offerLastremoveLast, pollLastgetLast, peekLast
其他addBefore, add(index, e), addAllremove(obj), remove(index)get, containsset

总结,除了add和offer方法,其他增删查最后一个元素的方法中,方法名都带last。不带first和last的都是针对第一个元素,如:
peek pop poll push 都针对第一个元素

pop,getLast等找不到会报错。poll peek找不到不报错:

找不到会异常找不到会返回null
removeFirst, pop, removeLastpoll, pollLast
getFirst, getLastpeek, peekLast

.
.

增加
加在最前面
void linkedFirst(e) 加在首位
void addFirst(e) ==linkedFirst
void push(e)  ==addFirst
//offerFirst(e)

加在最后
void linkLast(e)  加在最后
void addLast(e)  ==linkLast
//boolean offerLast(e)
boolean add(e)  ==linkLast,true
//boolean offer(e) true

加在其他位置
void linkBefore(e,node) 加在node前面,node是已经在list中的
void add(index, e) 加在index位,index<=size
addAll(index,c) 集合插入index位置


删除
删除第一个
E removeFirst() == 删除并返回,没有则异常
E remove()  ==removeFirst
E pop() ==removeFirst
E poll() 删除第一个并返回(没有则nullE pollFirst() = poll

删除最后
removeLast()
pollLast()


删除指定
//unlink(Node x) 删除x
boolean remove(Object o) 根据值搜索删除这一个,值可以是nullE remove(index) 删除指定位置这一个,==unlink(node(index))
removeFirstOccurrence(obj) 删除第一次出现的obj
removeLastOccurrence(obj)

修改
set(index, e)

查询
查看第一个
getFrist() 返回第一个,没有则异常
elements() ==getFrist
peek() 偷看第一个,没有则为null
peekFirst() ==peek

查看最后一个
getLast()没有则异常
peekLast()没有则为null

搜索查找
get(index)
int indexOf(obj) 第一次出现索引
int lastIndexOf(obj)
contains(obj)


其他
size()
clear()

boolean isPositionIndex() 判断目标位置在不在链表中
isElementIndex()
void checkPositionIndex(pos) 目标位置在不在链表中,不在会异常
  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值