树叶云鸿蒙OS教程:鸿蒙OS ListIterator

ListIterator

public interface ListIterator<E>
extends Iterator<E>

列表的迭代器,允许程序员在任一方向遍历列表,在迭代期间修改列表,并获取迭代器在列表中的当前位置。 ListIterator 没有当前元素; 它的光标位置始终位于调用 previous() 将返回的元素与调用 next() 将返回的元素之间。 长度为 n 的列表的迭代器有 n+1 个可能的光标位置,如下面的插入符号 (^) 所示:

                      Element(0)   Element(1)   Element(2)   ... Element(n-1)
 cursor positions:  ^            ^            ^            ^                  ^

请注意,remove() 和 set(java.lang.Object) 方法不是根据光标位置定义的; 它们被定义为对调用 next() 或 previous() 返回的最后一个元素进行操作。

此接口是 Java 集合框架的成员。

方法总结

修饰符和类型方法描述
voidadd(E e)将指定元素插入列表(可选操作)。
booleanhasNext()如果此列表迭代器在向前遍历列表时具有更多元素,则返回 true。
booleanhasPrevious()如果此列表迭代器在反向遍历列表时具有更多元素,则返回 true。
Enext()返回列表中的下一个元素并前进光标位置。
intnextIndex()返回将由后续调用 next() 返回的元素的索引。
Eprevious()返回列表中的前一个元素并将光标位置向后移动。
intpreviousIndex()返回将由后续调用 previous() 返回的元素的索引。
voidremove()从列表中删除 next() 或 previous() 返回的最后一个元素(可选操作)。
voidset(E e)将 next() 或 previous() 返回的最后一个元素替换为指定元素(可选操作)。
从接口 java.util.Iterator 继承的方法
forEachRemaining

方法详情

hasNext

boolean hasNext()

如果此列表迭代器在向前遍历列表时具有更多元素,则返回 true。 (换句话说,如果 next() 将返回一个元素而不是抛出异常,则返回 true。)

指定者:

接口 IteratorE 中的 hasNext

返回:

如果在向前遍历列表时列表迭代器有更多元素,则为 true

next

E next()

返回列表中的下一个元素并前进光标位置。 可以重复调用此方法以遍历列表,或与调用 previous() 混合以来回移动。 (请注意,交替调用 next 和 previous 将重复返回相同的元素。)

指定者:

接口 IteratorE 中的下一个

返回:

列表中的下一个元素

Throws:

Throw名称Throw描述
NoSuchElementException如果迭代没有下一个元素

hasPrevious

boolean hasPrevious()

如果此列表迭代器在反向遍历列表时具有更多元素,则返回 true。 (换句话说,如果 previous() 将返回一个元素而不是抛出异常,则返回 true。)

返回:

如果在反向遍历列表时列表迭代器有更多元素,则返回 true

previous

E previous()

返回列表中的前一个元素并将光标位置向后移动。 可以重复调用此方法以向后迭代列表,或与调用 next() 混合以来回遍历。 (请注意,交替调用 next 和 previous 将重复返回相同的元素。)

返回:

列表中的前一个元素

Throws:

Throw名称Throw描述
NoSuchElementException如果迭代没有前一个元素

nextIndex

int nextIndex()

返回将由后续调用 next() 返回的元素的索引。 (如果列表迭代器位于列表末尾,则返回列表大小。)

返回:

后续调用 next 将返回的元素的索引,如果列表迭代器位于列表末尾,则为列表大小

previousIndex

int previousIndex()

返回将由后续调用 previous() 返回的元素的索引。 (如果列表迭代器位于列表的开头,则返回 -1。)

返回:

后续调用 previous 时将返回的元素的索引,如果列表迭代器位于列表的开头,则返回 -1

remove

void remove()

从列表中删除 next() 或 previous() 返回的最后一个元素(可选操作)。 每次调用下一个或上一个时,此调用只能进行一次。 只有在最后一次调用 next 或 previous 之后没有调用 add(E) 时,才能执行此操作。

指定者:

在接口 IteratorE 中删除

Throws:

Throw名称Throw描述
UnsupportedOperationException如果此列表迭代器不支持删除操作
IllegalStateException如果 next 和 previous 都没有被调用,或者在最后一次调用 next 或 previous 之后没有调用 remove 或 add

set

void set(E e)

将 next() 或 previous() 返回的最后一个元素替换为指定元素(可选操作)。 只有在最后一次调用 next 或 previous 之后既没有调用 remove() 也没有调用 add(E) 时,才能进行此调用。

参数:

参数名称参数描述
e用于替换 next 或 previous 返回的最后一个元素的元素

Throws:

Throw名称Throw描述
UnsupportedOperationException如果此列表迭代器不支持 set 操作
ClassCastException如果指定元素的类阻止它被添加到这个列表中
IllegalArgumentException如果指定元素的某些方面阻止它被添加到此列表中
IllegalStateException如果 next 和 previous 都没有被调用,或者在最后一次调用 next 或 previous 之后没有调用 remove 或 add

add

void add(E e)

将指定元素插入列表(可选操作)。 该元素被插入到 next() 将返回的元素(如果有)之前,以及在 previous() 将返回的元素(如果有)之后。 (如果列表不包含任何元素,则新元素将成为列表中的唯一元素。)新元素插入到隐式光标之前:对 next 的后续调用将不受影响,对 previous 的后续调用将返回新元素 . (此调用将调用 nextIndex 或 previousIndex 返回的值加一。)

参数:

参数名称参数描述
e要插入的元素

Throws:

Throw名称Throw描述
UnsupportedOperationException如果此列表迭代器不支持 add 方法
ClassCastException如果指定元素的类阻止它被添加到这个列表中
IllegalArgumentException如果此元素的某些方面阻止它被添加到此列表中

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/180167.html<

(0)
管理的头像管理
上一篇2025-03-26 21:47
下一篇 2025-03-26 21:48

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注