LinkedList 源码分析(四)
🍁 作者:知识浅谈,CSDN 博客专家,阿里云签约博主,InfoQ 签约博主,华为云云享专家
📌 擅长领域:全栈工程师、爬虫、ACM 算法
💒 公众号:知识浅谈
LinkedList 源码分析(四)总结
正菜来了⛳⛳⛳
🎈LinkedList 源码分析
🍮E peekFirst()
含义: 从列表中找到最开始的一个元素,如果 first 为 null 的话,就返回 null,否则就返回 f 对应的 item。
🍮E peekLast()
含义:从列表中找到最后一个元素,如果 last 为 null 的话,就返回 null,否则就返回 f 对应的 item。
🍮E pollFirst()
含义:检索并删除此列表的第一个元素,如果此列表为空,则返回 null。
🍮E pollLast()
含义:检索并删除此列表的最后一个元素,如果此列表为空,则返回 null。
🍮void push(E e)
含义:将元素推送到此列表表示的堆栈上。换句话说,在这个列表的前面插入元素。
函数里边调用了 addFirst(e),就是把 e 这个元素添加到 list 的第一个位置。
🍮E pop()
含义:这个的意思是从列表中删除第一个位置的元素,并返回删除的元素,函数里边嗲用的 removeFirst 就是这个含义。从此列表表示的堆栈中弹出一个元素。换句话说,删除并返回此列表的第一个元素。
🍮E removeFirstOccurrence()
含义:删除此列表中第一次出现的指定元素(从头到尾遍历列表时)。如果列表不包含该元素,则它不变。
🍮boolean removeLastOccurrence(Object o)
含义:删除此列表中指定元素的最后一次出现(从头到尾遍历列表时)。如果列表不包含该元素,则它不变。
🍮ListIterator<E> listIterator(int index)
含义:返回从指定 index 索引位置开始的一个迭代器,首先先判断 index 这个位置是不是超出链表的范围。
从上述函数中,我们可以看到,checkPositionIndex(index)是用来检查 index 是否满足要求的,接着我们往下看。
🍮void checkPositionIndex(int index)
含义:这个函数的意思就是检查 index 这个索引是否满足条件,index 是否在链表的长度范围内,isPositionIndex()函数比较的 index 是否大于等于 0 且小于等于 size,如果不在范围内,就抛出异常。
🍚总结
以上是关于 LinkedList 源码中存在的部分函数的解读,希望有所帮助。
版权声明: 本文为 InfoQ 作者【知识浅谈】的原创文章。
原文链接:【http://xie.infoq.cn/article/e907051568bacaa8d516e6b90】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论