W3Cschool
恭喜您成為首批注冊用戶
獲得88經驗值獎勵
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 集合框架的成員。
修飾符和類型 | 方法 | 描述 |
---|---|---|
void | add(E e) | 將指定元素插入列表(可選操作)。 |
boolean | hasNext() | 如果此列表迭代器在向前遍歷列表時具有更多元素,則返回 true。 |
boolean | hasPrevious() | 如果此列表迭代器在反向遍歷列表時具有更多元素,則返回 true。 |
E | next() | 返回列表中的下一個元素并前進光標位置。 |
int | nextIndex() | 返回將由后續(xù)調用 next() 返回的元素的索引。 |
E | previous() | 返回列表中的前一個元素并將光標位置向后移動。 |
int | previousIndex() | 返回將由后續(xù)調用 previous() 返回的元素的索引。 |
void | remove() | 從列表中刪除 next() 或 previous() 返回的最后一個元素(可選操作)。 |
void | set(E e) | 將 next() 或 previous() 返回的最后一個元素替換為指定元素(可選操作)。 |
從接口 java.util.Iterator 繼承的方法 |
---|
forEachRemaining |
boolean hasNext()
如果此列表迭代器在向前遍歷列表時具有更多元素,則返回 true。 (換句話說,如果 next() 將返回一個元素而不是拋出異常,則返回 true。)
指定者:
接口 IteratorE 中的 hasNext
返回:
如果在向前遍歷列表時列表迭代器有更多元素,則為 true
E next()
返回列表中的下一個元素并前進光標位置。 可以重復調用此方法以遍歷列表,或與調用 previous() 混合以來回移動。 (請注意,交替調用 next 和 previous 將重復返回相同的元素。)
指定者:
接口 IteratorE 中的下一個
返回:
列表中的下一個元素
Throws:
Throw名稱 | Throw描述 |
---|---|
NoSuchElementException | 如果迭代沒有下一個元素 |
boolean hasPrevious()
如果此列表迭代器在反向遍歷列表時具有更多元素,則返回 true。 (換句話說,如果 previous() 將返回一個元素而不是拋出異常,則返回 true。)
返回:
如果在反向遍歷列表時列表迭代器有更多元素,則返回 true
E previous()
返回列表中的前一個元素并將光標位置向后移動。 可以重復調用此方法以向后迭代列表,或與調用 next() 混合以來回遍歷。 (請注意,交替調用 next 和 previous 將重復返回相同的元素。)
返回:
列表中的前一個元素
Throws:
Throw名稱 | Throw描述 |
---|---|
NoSuchElementException | 如果迭代沒有前一個元素 |
int nextIndex()
返回將由后續(xù)調用 next() 返回的元素的索引。 (如果列表迭代器位于列表末尾,則返回列表大小。)
返回:
后續(xù)調用 next 將返回的元素的索引,如果列表迭代器位于列表末尾,則為列表大小
int previousIndex()
返回將由后續(xù)調用 previous() 返回的元素的索引。 (如果列表迭代器位于列表的開頭,則返回 -1。)
返回:
后續(xù)調用 previous 時將返回的元素的索引,如果列表迭代器位于列表的開頭,則返回 -1
void remove()
從列表中刪除 next() 或 previous() 返回的最后一個元素(可選操作)。 每次調用下一個或上一個時,此調用只能進行一次。 只有在最后一次調用 next 或 previous 之后沒有調用 add(E) 時,才能執(zhí)行此操作。
指定者:
在接口 IteratorE 中刪除
Throws:
Throw名稱 | Throw描述 |
---|---|
UnsupportedOperationException | 如果此列表迭代器不支持刪除操作 |
IllegalStateException | 如果 next 和 previous 都沒有被調用,或者在最后一次調用 next 或 previous 之后沒有調用 remove 或 add |
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 |
void add(E e)
將指定元素插入列表(可選操作)。 該元素被插入到 next() 將返回的元素(如果有)之前,以及在 previous() 將返回的元素(如果有)之后。 (如果列表不包含任何元素,則新元素將成為列表中的唯一元素。)新元素插入到隱式光標之前:對 next 的后續(xù)調用將不受影響,對 previous 的后續(xù)調用將返回新元素 . (此調用將調用 nextIndex 或 previousIndex 返回的值加一。)
參數:
參數名稱 | 參數描述 |
---|---|
e | 要插入的元素 |
Throws:
Throw名稱 | Throw描述 |
---|---|
UnsupportedOperationException | 如果此列表迭代器不支持 add 方法 |
ClassCastException | 如果指定元素的類阻止它被添加到這個列表中 |
IllegalArgumentException | 如果此元素的某些方面阻止它被添加到此列表中 |
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: