LinkedList方法总结 ListIterator和Iterator的区别
发布网友
发布时间:2022-04-24 15:57
我来回答
共1个回答
热心网友
时间:2023-10-21 00:21
LinkedList方法总结:
1、getFirst()和element()完全一样,它们都返回列表的头(第一个元素),并且不移除它,若List为空,则抛出NoSunchElementException。
peek()方法也是不移除且返回列表的第一个元素,不同之处是List为空时返回null。
2、remove()和removeFirst()也是一样的,移除并返回列表的第一个元素,若列表为空,抛出NoSunchElementException。
poll()也是移除并返回列表的第一个元素,若列表为空,返回null。
3、addFirst()、add()、addLast()相同,它们都将某个元素插入到列表的尾部。
4、removeLast()移除并返回列表的最后一个元素。
ListIterator和Iterator的区别:
1、使用范围不同,iterator可以应用于所有的集合,Set、List和Map以及这些集合的子类型。而ListIterator只能用于List及其子类型。
2、ListIterator有add方法,可以向List中添加对象,而Iterator不能。
3、ListIterator和Iterator都有hasNext()和next()方法,可以实现顺序向后遍历,但是ListIterator有hasPrevious()和previous()方法,可以实现逆向遍历,但是iterator不可以。
4、ListIterator可以定位当前索引的位置,nextIndex()和previousIndex()可以实现。Iterator没有此功能。
5、都可以实现删除操作,但是ListIterator可以实现对象的修改,set()方法可以实现。Iterator仅能遍历,不能实现修改。