创建ListIterator对象

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建ListIterator对象相关的知识,希望对你有一定的参考价值。

如果ListIterator是一个接口我怎么能创建一个ListIterator对象,如下所示?

LinkedList<String> myList = new LinkedList<String>();

ListIterator<String> iter = myList.listIterator();
答案

如果你看一下Java 8中java.util.LinkedList的实现,你会发现它包含了这个listIterator()实现:

public ListIterator<E> listIterator(int index) {
    checkPositionIndex(index);
    return new ListItr(index);
}

返回的有效内容是实现ListItr接口的内部类ListIterator的实例。在调用ListItr方法之后,客户端必须使用ListIterator接口与listIterator()的这个实例进行交互。

另一答案

您无法创建接口对象。

myList.listIterator();返回ListItr类的对象,而不是ListIterator<E>接口的对象。

private class ListItr extends Itr implements ListIterator<E>{...}

由于ListItr类实现了ListIterator<E>,您可以引用从ListIterator<E>返回的对象。

以上是关于创建ListIterator对象的主要内容,如果未能解决你的问题,请参考以下文章

Java:list.listIterator() 返回的对象属于哪个类?

添加到 ArrayList 对象的 ListIterator

JAVA-初步认识-常用对象API(集合框架-ListIterator接口)

Iterator和ListIterator区别

Android 逆向使用 Python 解析 ELF 文件 ( Capstone 反汇编 ELF 文件中的机器码数据 | 创建反汇编解析器实例对象 | 设置汇编解析器显示细节 )(代码片段

有没有办法使用相同的布局动态创建片段并向它们显示数据?