W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
public interface ListIterator<E>
extends Iterator<E>
列表的迭代器,允許程序員在任一方向遍歷列表,在迭代期間修改列表,并獲取迭代器在列表中的當(dāng)前位置。 ListIterator 沒(méi)有當(dāng)前元素; 它的光標(biāo)位置始終位于調(diào)用 previous() 將返回的元素與調(diào)用 next() 將返回的元素之間。 長(zhǎng)度為 n 的列表的迭代器有 n+1 個(gè)可能的光標(biāo)位置,如下面的插入符號(hào) (^) 所示:
Element(0) Element(1) Element(2) ... Element(n-1)
cursor positions: ^ ^ ^ ^ ^
請(qǐng)注意,remove() 和 set(java.lang.Object) 方法不是根據(jù)光標(biāo)位置定義的; 它們被定義為對(duì)調(diào)用 next() 或 previous() 返回的最后一個(gè)元素進(jìn)行操作。
此接口是 Java 集合框架的成員。
修飾符和類(lèi)型 | 方法 | 描述 |
---|---|---|
void | add(E e) | 將指定元素插入列表(可選操作)。 |
boolean | hasNext() | 如果此列表迭代器在向前遍歷列表時(shí)具有更多元素,則返回 true。 |
boolean | hasPrevious() | 如果此列表迭代器在反向遍歷列表時(shí)具有更多元素,則返回 true。 |
E | next() | 返回列表中的下一個(gè)元素并前進(jìn)光標(biāo)位置。 |
int | nextIndex() | 返回將由后續(xù)調(diào)用 next() 返回的元素的索引。 |
E | previous() | 返回列表中的前一個(gè)元素并將光標(biāo)位置向后移動(dòng)。 |
int | previousIndex() | 返回將由后續(xù)調(diào)用 previous() 返回的元素的索引。 |
void | remove() | 從列表中刪除 next() 或 previous() 返回的最后一個(gè)元素(可選操作)。 |
void | set(E e) | 將 next() 或 previous() 返回的最后一個(gè)元素替換為指定元素(可選操作)。 |
從接口 java.util.Iterator 繼承的方法 |
---|
forEachRemaining |
boolean hasNext()
如果此列表迭代器在向前遍歷列表時(shí)具有更多元素,則返回 true。 (換句話說(shuō),如果 next() 將返回一個(gè)元素而不是拋出異常,則返回 true。)
指定者:
接口 IteratorE 中的 hasNext
返回:
如果在向前遍歷列表時(shí)列表迭代器有更多元素,則為 true
E next()
返回列表中的下一個(gè)元素并前進(jìn)光標(biāo)位置。 可以重復(fù)調(diào)用此方法以遍歷列表,或與調(diào)用 previous() 混合以來(lái)回移動(dòng)。 (請(qǐng)注意,交替調(diào)用 next 和 previous 將重復(fù)返回相同的元素。)
指定者:
接口 IteratorE 中的下一個(gè)
返回:
列表中的下一個(gè)元素
Throws:
Throw名稱(chēng) | Throw描述 |
---|---|
NoSuchElementException | 如果迭代沒(méi)有下一個(gè)元素 |
boolean hasPrevious()
如果此列表迭代器在反向遍歷列表時(shí)具有更多元素,則返回 true。 (換句話說(shuō),如果 previous() 將返回一個(gè)元素而不是拋出異常,則返回 true。)
返回:
如果在反向遍歷列表時(shí)列表迭代器有更多元素,則返回 true
E previous()
返回列表中的前一個(gè)元素并將光標(biāo)位置向后移動(dòng)。 可以重復(fù)調(diào)用此方法以向后迭代列表,或與調(diào)用 next() 混合以來(lái)回遍歷。 (請(qǐng)注意,交替調(diào)用 next 和 previous 將重復(fù)返回相同的元素。)
返回:
列表中的前一個(gè)元素
Throws:
Throw名稱(chēng) | Throw描述 |
---|---|
NoSuchElementException | 如果迭代沒(méi)有前一個(gè)元素 |
int nextIndex()
返回將由后續(xù)調(diào)用 next() 返回的元素的索引。 (如果列表迭代器位于列表末尾,則返回列表大小。)
返回:
后續(xù)調(diào)用 next 將返回的元素的索引,如果列表迭代器位于列表末尾,則為列表大小
int previousIndex()
返回將由后續(xù)調(diào)用 previous() 返回的元素的索引。 (如果列表迭代器位于列表的開(kāi)頭,則返回 -1。)
返回:
后續(xù)調(diào)用 previous 時(shí)將返回的元素的索引,如果列表迭代器位于列表的開(kāi)頭,則返回 -1
void remove()
從列表中刪除 next() 或 previous() 返回的最后一個(gè)元素(可選操作)。 每次調(diào)用下一個(gè)或上一個(gè)時(shí),此調(diào)用只能進(jìn)行一次。 只有在最后一次調(diào)用 next 或 previous 之后沒(méi)有調(diào)用 add(E) 時(shí),才能執(zhí)行此操作。
指定者:
在接口 IteratorE 中刪除
Throws:
Throw名稱(chēng) | Throw描述 |
---|---|
UnsupportedOperationException | 如果此列表迭代器不支持刪除操作 |
IllegalStateException | 如果 next 和 previous 都沒(méi)有被調(diào)用,或者在最后一次調(diào)用 next 或 previous 之后沒(méi)有調(diào)用 remove 或 add |
void set(E e)
將 next() 或 previous() 返回的最后一個(gè)元素替換為指定元素(可選操作)。 只有在最后一次調(diào)用 next 或 previous 之后既沒(méi)有調(diào)用 remove() 也沒(méi)有調(diào)用 add(E) 時(shí),才能進(jìn)行此調(diào)用。
參數(shù):
參數(shù)名稱(chēng) | 參數(shù)描述 |
---|---|
e | 用于替換 next 或 previous 返回的最后一個(gè)元素的元素 |
Throws:
Throw名稱(chēng) | Throw描述 |
---|---|
UnsupportedOperationException | 如果此列表迭代器不支持 set 操作 |
ClassCastException | 如果指定元素的類(lèi)阻止它被添加到這個(gè)列表中 |
IllegalArgumentException | 如果指定元素的某些方面阻止它被添加到此列表中 |
IllegalStateException | 如果 next 和 previous 都沒(méi)有被調(diào)用,或者在最后一次調(diào)用 next 或 previous 之后沒(méi)有調(diào)用 remove 或 add |
void add(E e)
將指定元素插入列表(可選操作)。 該元素被插入到 next() 將返回的元素(如果有)之前,以及在 previous() 將返回的元素(如果有)之后。 (如果列表不包含任何元素,則新元素將成為列表中的唯一元素。)新元素插入到隱式光標(biāo)之前:對(duì) next 的后續(xù)調(diào)用將不受影響,對(duì) previous 的后續(xù)調(diào)用將返回新元素 . (此調(diào)用將調(diào)用 nextIndex 或 previousIndex 返回的值加一。)
參數(shù):
參數(shù)名稱(chēng) | 參數(shù)描述 |
---|---|
e | 要插入的元素 |
Throws:
Throw名稱(chēng) | Throw描述 |
---|---|
UnsupportedOperationException | 如果此列表迭代器不支持 add 方法 |
ClassCastException | 如果指定元素的類(lèi)阻止它被添加到這個(gè)列表中 |
IllegalArgumentException | 如果此元素的某些方面阻止它被添加到此列表中 |
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: