鴻蒙OS ArrayList

2022-07-08 17:54 更新

ArrayList

java.lang.Object

|---java.util.AbstractCollection<E&

|---|---java.util.AbstractList<E&

|---|---|---java.util.ArrayList<E&

public class ArrayList<E>
extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, Serializable

List 接口的可調(diào)整大小的數(shù)組實現(xiàn)。 實現(xiàn)所有可選列表操作,并允許所有元素,包括 null。 除了實現(xiàn) List 接口之外,該類還提供了一些方法來操作內(nèi)部用于存儲列表的數(shù)組的大小。 (這個類大致相當(dāng)于 Vector,只是它是不同步的。)

size、isEmpty、get、set、iterator 和 listIterator 操作在恒定時間內(nèi)運行。 添加操作在攤銷常數(shù)時間內(nèi)運行,即添加 n 個元素需要 O(n) 時間。 所有其他操作都以線性時間運行(粗略地說)。 與 LinkedList 實現(xiàn)相比,常數(shù)因子較低。

每個 ArrayList 實例都有一個容量。 容量是用于存儲列表中元素的數(shù)組的大小。 它總是至少與列表大小一樣大。 隨著元素被添加到 ArrayList,它的容量會自動增長。 除了添加一個元素具有恒定的攤銷時間成本這一事實之外,沒有指定增長策略的細(xì)節(jié)。

應(yīng)用程序可以在使用 ensureCapacity 操作添加大量元素之前增加 ArrayList 實例的容量。 這可以減少增量重新分配的數(shù)量。

請注意,此實現(xiàn)不同步。 如果多個線程同時訪問一個 ArrayList 實例,并且至少有一個線程在結(jié)構(gòu)上修改了列表,則必須在外部進(jìn)行同步。 (結(jié)構(gòu)修改是添加或刪除一個或多個元素,或顯式調(diào)整后備數(shù)組大小的任何操作;僅設(shè)置元素的值不是結(jié)構(gòu)修改。)這通常通過同步一些自然封裝的對象來完成 列表。 如果不存在這樣的對象,則應(yīng)使用 Collections#synchronizedList 方法“包裝”該列表。 這最好在創(chuàng)建時完成,以防止對列表的意外不同步訪問:

   List list = Collections.synchronizedList(new ArrayList(...));

此類的 iterator 和 listIterator 方法返回的迭代器是快速失敗的:如果在創(chuàng)建迭代器后的任何時間對列表進(jìn)行結(jié)構(gòu)修改,除了通過迭代器自己的 ListIterator#remove() 或 ListIterator#add(Object) 之外的任何方式方法,迭代器將拋出 ConcurrentModificationException。因此,面對并發(fā)修改,迭代器快速而干凈地失敗,而不是在未來不確定的時間冒任意的、非確定性的行為。

請注意,不能保證迭代器的快速失敗行為,因為一般來說,在存在不同步的并發(fā)修改的情況下,不可能做出任何硬保證??焖偈〉牡鲿M最大努力拋出 ConcurrentModificationException。因此,編寫一個依賴于這個異常的正確性的程序是錯誤的:迭代器的快速失敗行為應(yīng)該只用于檢測錯誤。

此類是 Java 集合框架的成員。

字段摘要

從類 java.util.AbstractList 繼承的字段
modCount

構(gòu)造函數(shù)摘要

構(gòu)造函數(shù) 描述
ArrayList() 構(gòu)造一個初始容量為 10 的空列表。
ArrayList(int initialCapacity) 構(gòu)造一個具有指定初始容量的空列表。
ArrayList(Collection<? extends E> c) 按照集合的迭代器返回的順序構(gòu)造一個包含指定集合元素的列表。

方法總結(jié)

修飾符和類型 方法 描述
void add(int index, E element) 在此列表中的指定位置插入指定元素。
boolean add(E e) 將指定元素附加到此列表的末尾。
boolean addAll(int index, Collection<? extends E> c) 將指定集合中的所有元素插入此列表,從指定位置開始。
boolean addAll(Collection<? extends E> c) 按照指定集合的迭代器返回的順序,將指定集合中的所有元素附加到此列表的末尾。
void clear() 從此列表中刪除所有元素。
Object clone() 返回此 ArrayList 實例的淺表副本。
boolean contains(Object o) 如果此列表包含指定元素,則返回 true。
void ensureCapacity(int minCapacity) 如有必要,增加此 ArrayList 實例的容量,以確保它至少可以容納最小容量參數(shù)指定的元素數(shù)量。
void forEach(Consumer<? super E> action) 對 Iterable 的每個元素執(zhí)行給定的操作,直到處理完所有元素或該操作引發(fā)異常。
E get(int index) 返回此列表中指定位置的元素。
int indexOf(Object o) 返回此列表中指定元素第一次出現(xiàn)的索引,如果此列表不包含該元素,則返回 -1。
boolean isEmpty() 如果此列表不包含任何元素,則返回 true。
IteratorE iterator() 以正確的順序返回此列表中元素的迭代器。
int lastIndexOf(Object o) 返回此列表中指定元素最后一次出現(xiàn)的索引,如果此列表不包含該元素,則返回 -1。
ListIteratorE listIterator() 返回此列表中元素的列表迭代器(以正確的順序)。
ListIteratorE listIterator(int index) 返回此列表中元素的列表迭代器(以正確的順序),從列表中的指定位置開始。
E remove(int index) 移除此列表中指定位置的元素。
boolean remove(Object o) 從此列表中刪除第一次出現(xiàn)的指定元素(如果存在)。
boolean removeAll(Collection<?> c) 從此列表中刪除包含在指定集合中的所有元素。
boolean removeIf(Predicate<? super E> filter) 刪除此集合中滿足給定謂詞的所有元素。
protected void removeRange(int fromIndex, int toIndex) 從此列表中刪除索引在 fromIndex(包括)和 toIndex(不包括)之間的所有元素。
void replaceAll(UnaryOperatorE operator) 將此列表的每個元素替換為將運算符應(yīng)用于該元素的結(jié)果。
boolean retainAll(Collection<?> c) 僅保留此列表中包含在指定集合中的元素。
E set(int index, E element) 將此列表中指定位置的元素替換為指定元素。
int size() 返回此列表中的元素數(shù)。
void sort(Comparator<? super E> c) 根據(jù)指定 Comparator 產(chǎn)生的順序?qū)υ摿斜磉M(jìn)行排序。
SpliteratorE spliterator() 在此列表中的元素上創(chuàng)建一個后期綁定和快速失敗的拆分器。
ListE subList(int fromIndex, int toIndex) 返回此列表在指定的 fromIndex(包括)和 toIndex(不包括)之間的部分的視圖。
Object[] toArray() 以正確的順序(從第一個元素到最后一個元素)返回包含此列表中所有元素的數(shù)組。
<T> T[] toArray(T[] a) 以正確的順序(從第一個元素到最后一個元素)返回一個包含此列表中所有元素的數(shù)組; 返回數(shù)組的運行時類型是指定數(shù)組的運行時類型。
void trimToSize() 將此 ArrayList 實例的容量修剪為列表的當(dāng)前大小。
從類 java.util.AbstractCollection 繼承的方法
containsAll, toString
從類 java.util.AbstractList 繼承的方法
equals, hashCode
從接口 java.util.Collection 繼承的方法
parallelStream, stream
從接口 java.util.List 繼承的方法
containsAll, equals, hashCode
從類 java.lang.Object 繼承的方法
finalize, getClass, notify, notifyAll, wait, wait, wait

構(gòu)造函數(shù)詳細(xì)信息

ArrayList

public ArrayList(int initialCapacity)

構(gòu)造一個具有指定初始容量的空列表。

參數(shù):

參數(shù)名稱 參數(shù)描述
initialCapacity 列表的初始容量

Throws:

Throw名稱 Throw描述
IllegalArgumentException 如果指定的初始容量為負(fù)

ArrayList

public ArrayList()

構(gòu)造一個初始容量為 10 的空列表。

ArrayList

public ArrayList(Collection<? extends E> c)

按照集合的迭代器返回的順序構(gòu)造一個包含指定集合元素的列表。

參數(shù):

參數(shù)名稱 參數(shù)描述
c 將其元素放入此列表的集合

Throws:

Throw名稱 Throw描述
NullPointerException 如果指定的集合為空

方法詳情

trimToSize

public void trimToSize()

將此 ArrayList 實例的容量修剪為列表的當(dāng)前大小。 應(yīng)用程序可以使用此操作來最小化 ArrayList 實例的存儲。

ensureCapacity

public void ensureCapacity(int minCapacity)

如有必要,增加此 ArrayList 實例的容量,以確保它至少可以容納最小容量參數(shù)指定的元素數(shù)量。

參數(shù):

參數(shù)名稱 參數(shù)描述
minCapacity 所需的最小容量

size

public int size()

返回此列表中的元素數(shù)。

指定者:

接口 CollectionE 中的大小

指定者:

接口 ListE 中的大小

指定者:

AbstractCollectionE 類中的大小

返回:

此列表中的元素數(shù)

isEmpty

public boolean isEmpty()

如果此列表不包含任何元素,則返回 true。

指定者:

接口 CollectionE 中的 isEmpty

指定者:

接口 ListE 中的 isEmpty

覆蓋:

類 AbstractCollectionE 中的 isEmpty

返回:

如果此列表不包含任何元素,則為 true

contains

public boolean contains(Object o)

如果此列表包含指定元素,則返回 true。 更正式地說,當(dāng)且僅當(dāng)此列表包含至少一個元素 e 滿足 (o==null ? e==null : o.equals(e)) 時,才返回 true。

指定者:

包含在接口 CollectionE 中

指定者:

包含在接口 ListE 中

覆蓋:

包含在類 AbstractCollectionE 中

參數(shù):

參數(shù)名稱 參數(shù)描述
o 要測試其在此列表中的存在的元素

返回:

如果此列表包含指定元素,則為 true

indexOf

public int indexOf(Object o)

返回此列表中指定元素第一次出現(xiàn)的索引,如果此列表不包含該元素,則返回 -1。 更正式地說,返回滿足 (o==null ? get(i)==null : o.equals(get(i))) 的最低索引 i,如果沒有這樣的索引,則返回 -1。

指定者:

接口 ListE 中的 indexOf

覆蓋:

AbstractListE 類中的 indexOf

參數(shù):

參數(shù)名稱 參數(shù)描述
o 要搜索的元素

返回:

此列表中指定元素第一次出現(xiàn)的索引,如果此列表不包含該元素,則為 -1

lastIndexOf

public int lastIndexOf(Object o)

返回此列表中指定元素最后一次出現(xiàn)的索引,如果此列表不包含該元素,則返回 -1。 更正式地說,返回滿足 (o==null ? get(i)==null : o.equals(get(i))) 的最高索引 i,如果沒有這樣的索引,則返回 -1。

指定者:

接口 ListE 中的 lastIndexOf

覆蓋:

類 AbstractListE 中的 lastIndexOf

參數(shù):

參數(shù)名稱 參數(shù)描述
o 要搜索的元素

返回:

此列表中指定元素最后一次出現(xiàn)的索引,如果此列表不包含該元素,則為 -1

clone

public Object clone()

返回此 ArrayList 實例的淺表副本。 (元素本身不會被復(fù)制。)

覆蓋:

在類 Object 中克隆

返回:

此 ArrayList 實例的克隆

toArray

public Object[] toArray()

以正確的順序(從第一個元素到最后一個元素)返回包含此列表中所有元素的數(shù)組。

返回的數(shù)組將是“安全的”,因為此列表不維護(hù)對它的引用。 (換句話說,這個方法必須分配一個新數(shù)組)。 因此,調(diào)用者可以自由修改返回的數(shù)組。

此方法充當(dāng)基于數(shù)組和基于集合的 API 之間的橋梁。

指定者:

接口 CollectionE 中的 toArray

指定者:

接口 ListE 中的 toArray

覆蓋:

AbstractCollectionE 類中的 toArray

返回:

以正確順序包含此列表中所有元素的數(shù)組

toArray

public <T> T[] toArray(T[] a)

以正確的順序(從第一個元素到最后一個元素)返回一個包含此列表中所有元素的數(shù)組; 返回數(shù)組的運行時類型是指定數(shù)組的運行時類型。 如果列表適合指定的數(shù)組,則在其中返回。 否則,將使用指定數(shù)組的運行時類型和此列表的大小分配一個新數(shù)組。

如果列表適合指定的數(shù)組并有剩余空間(即,數(shù)組的元素多于列表),則數(shù)組中緊跟集合末尾的元素設(shè)置為 null。 (僅當(dāng)調(diào)用者知道列表不包含任何空元素時,這對確定列表的長度很有用。)

指定者:

接口 CollectionE 中的 toArray

指定者:

接口 ListE 中的 toArray

覆蓋:

AbstractCollectionE 類中的 toArray

類型參數(shù):

類型參數(shù)名稱 類型參數(shù)描述
T 包含集合的數(shù)組的運行時類型

參數(shù):

參數(shù)名稱 參數(shù)描述
a 存儲列表元素的數(shù)組(如果它足夠大); 否則,將為此目的分配相同運行時類型的新數(shù)組。

返回:

包含列表元素的數(shù)組

Throws:

Throw名稱 Throw描述
ArrayStoreException 如果指定數(shù)組的運行時類型不是此列表中每個元素的運行時類型的超類型
NullPointerException 如果指定的數(shù)組為空

get

public E get(int index)

返回此列表中指定位置的元素。

指定者:

進(jìn)入接口 ListE

指定者:

進(jìn)入類 AbstractListE

參數(shù):

參數(shù)名稱 參數(shù)描述
index 要返回的元素的索引

返回:

此列表中指定位置的元素

Throws:

Throw名稱 Throw描述
IndexOutOfBoundsException 如果索引超出范圍 (index < 0 || index >= size())

set

public E set(int index, E element)

將此列表中指定位置的元素替換為指定元素。

指定者:

在接口 ListE 中設(shè)置

覆蓋:

在類 AbstractListE 中設(shè)置

參數(shù):

參數(shù)名稱 參數(shù)描述
index 要替換的元素的索引
element 要存儲在指定位置的元素

返回:

先前在指定位置的元素

Throws:

Throw名稱 Throw描述
IndexOutOfBoundsException 如果索引超出范圍 (index < 0 || index >= size())

add

public boolean add(E e)

將指定元素附加到此列表的末尾。

指定者:

添加接口CollectionE

指定者:

添加接口ListE

覆蓋:

添加類 AbstractListE

參數(shù):

參數(shù)名稱 參數(shù)描述
e 要附加到此列表的元素

返回:

true(由 Collection#add 指定)

add

public void add(int index, E element)

在此列表中的指定位置插入指定元素。 將當(dāng)前位于該位置的元素(如果有)和任何后續(xù)元素向右移動(將其索引加一)。

指定者:

添加接口ListE

覆蓋:

添加類 AbstractListE

參數(shù):

參數(shù)名稱 參數(shù)描述
index 要插入指定元素的索引
element 要插入的元素

Throws:

Throw名稱 Throw描述
IndexOutOfBoundsException 如果索引超出范圍 (index < 0 || index > size())

remove

public E remove(int index)

移除此列表中指定位置的元素。 將任何后續(xù)元素向左移動(從它們的索引中減去 1)。

指定者:

在接口 ListE 中刪除

覆蓋:

在類 AbstractListE 中刪除

參數(shù):

參數(shù)名稱 參數(shù)描述
index 要刪除的元素的索引

返回:

從列表中刪除的元素

Throws:

Throw名稱 Throw描述
IndexOutOfBoundsException 如果索引超出范圍 (index < 0 || index >= size())

remove

public boolean remove(Object o)

從此列表中刪除第一次出現(xiàn)的指定元素(如果存在)。 如果列表不包含該元素,則它不變。 更正式地說,刪除具有最低索引 i 的元素,使得 (o==null ? get(i)==null : o.equals(get(i))) (如果存在這樣的元素)。 如果此列表包含指定的元素(或等效地,如果此列表因調(diào)用而更改),則返回 true。

指定者:

在接口 CollectionE 中刪除

指定者:

在接口 ListE 中刪除

覆蓋:

在類 AbstractCollectionE 中刪除

參數(shù):

參數(shù)名稱 參數(shù)描述
o 要從此列表中刪除的元素(如果存在)

返回:

如果此列表包含指定元素,則為 true

clear

public void clear()

從此列表中刪除所有元素。 此調(diào)用返回后,列表將為空。

指定者:

在界面 CollectionE 中清除

指定者:

在接口 ListE 中清除

覆蓋:

在類 AbstractListE 中清除

addAll

public boolean addAll(Collection<? extends E> c)

按照指定集合的迭代器返回的順序,將指定集合中的所有元素附加到此列表的末尾。 如果在操作正在進(jìn)行時修改了指定的集合,則此操作的行為是未定義的。 (這意味著如果指定的集合是這個列表,并且這個列表是非空的,那么這個調(diào)用的行為是未定義的。)

指定者:

接口 CollectionE 中的 addAll

指定者:

接口 ListE 中的 addAll

覆蓋:

類 AbstractCollectionE 中的 addAll

參數(shù):

參數(shù)名稱 參數(shù)描述
c 包含要添加到此列表的元素的集合

返回:

如果此列表因調(diào)用而更改,則為 true

Throws:

Throw名稱 Throw描述
NullPointerException 如果指定的集合為空

addAll

public boolean addAll(int index, Collection<? extends E> c)

將指定集合中的所有元素插入此列表,從指定位置開始。 將當(dāng)前位于該位置的元素(如果有)和任何后續(xù)元素向右移動(增加它們的索引)。 新元素將按照指定集合的迭代器返回的順序出現(xiàn)在列表中。

指定者:

接口 ListE 中的 addAll

覆蓋:

類 AbstractListE 中的 addAll

參數(shù):

參數(shù)名稱 參數(shù)描述
index 插入指定集合中第一個元素的索引
c 包含要添加到此列表的元素的集合

返回:

如果此列表因調(diào)用而更改,則為 true

Throws:

Throw名稱 Throw描述
IndexOutOfBoundsException 如果索引超出范圍 (index < 0 || index > size())
NullPointerException 如果指定的集合為空

removeRange

protected void removeRange(int fromIndex, int toIndex)

從此列表中刪除索引在 fromIndex(包括)和 toIndex(不包括)之間的所有元素。 將任何后續(xù)元素向左移動(減少它們的索引)。 此調(diào)用通過 (toIndex - fromIndex) 元素縮短列表。 (如果toIndex==fromIndex,則此操作無效。)

覆蓋:

AbstractListE 類中的 removeRange

參數(shù):

參數(shù)名稱 參數(shù)描述
fromIndex 要刪除的第一個元素的索引
toIndex 要刪除的最后一個元素之后的索引

Throws:

Throw名稱 Throw描述
IndexOutOfBoundsException 如果 fromIndex 或 toIndex 超出范圍 (fromIndex < 0 || fromIndex >= size() || toIndex > size() || toIndex < fromIndex)

removeAll

public boolean removeAll(Collection<?> c)

從此列表中刪除包含在指定集合中的所有元素。

指定者:

接口 CollectionE 中的 removeAll

指定者:

接口 ListE 中的 removeAll

覆蓋:

類 AbstractCollectionE 中的 removeAll

參數(shù):

參數(shù)名稱 參數(shù)描述
c 包含要從此列表中刪除的元素的集合

返回:

如果此列表因調(diào)用而更改,則為 true

Throws:

Throw名稱 Throw描述
ClassCastException 如果此列表的某個元素的類與指定的集合不兼容(可選)
NullPointerException 如果此列表包含空元素并且指定的集合不允許空元素(可選),或者指定的集合為空

retainAll

public boolean retainAll(Collection<?> c)

僅保留此列表中包含在指定集合中的元素。 換句話說,從這個列表中刪除所有不包含在指定集合中的元素。

指定者:

接口CollectionE中的retainAll

指定者:

接口 ListE 中的 retainAll

覆蓋:

類 AbstractCollectionE 中的 retainAll

參數(shù):

參數(shù)名稱 參數(shù)描述
c 包含要保留在此列表中的元素的集合

返回:

如果此列表因調(diào)用而更改,則為 true

Throws:

Throw名稱 Throw描述
ClassCastException 如果此列表的某個元素的類與指定的集合不兼容(可選)
NullPointerException 如果此列表包含空元素并且指定的集合不允許空元素(可選),或者指定的集合為空

listIterator

public ListIteratorE listIterator(int index)

返回此列表中元素的列表迭代器(以正確的順序),從列表中的指定位置開始。 指定的索引指示初始調(diào)用 ListIterator#next 將返回的第一個元素。 對 ListIterator#previous 的初始調(diào)用將返回具有指定索引減一的元素。

返回的列表迭代器是快速失敗的。

指定者:

接口 ListE 中的 listIterator

覆蓋:

AbstractListE 類中的 listIterator

參數(shù):

參數(shù)名稱 參數(shù)描述
index 要從列表迭代器返回的第一個元素的索引(通過調(diào)用 ListIterator#next)

返回:

此列表中元素的列表迭代器(按正確順序),從列表中的指定位置開始

Throws:

Throw名稱 Throw描述
IndexOutOfBoundsException 如果索引超出范圍 (index < 0 || index > size())

listIterator

public ListIteratorE listIterator()

返回此列表中元素的列表迭代器(以正確的順序)。

返回的列表迭代器是快速失敗的。

指定者:

接口 ListE 中的 listIterator

覆蓋:

AbstractListE 類中的 listIterator

返回:

此列表中元素的列表迭代器(按正確順序)

iterator

public IteratorE iterator()

以正確的順序返回此列表中元素的迭代器。

返回的迭代器是快速失敗的。

指定者:

接口 CollectionE 中的迭代器

指定者:

接口 IterableE 中的迭代器

指定者:

接口 ListE 中的迭代器

覆蓋:

AbstractListE 類中的迭代器

返回:

以正確順序遍歷此列表中的元素的迭代器

subList

public ListE subList(int fromIndex, int toIndex)

返回此列表在指定的 fromIndex(包括)和 toIndex(不包括)之間的部分的視圖。 (如果 fromIndex 和 toIndex 相等,則返回列表為空。)返回列表由此列表支持,因此返回列表中的非結(jié)構(gòu)性更改會反映在此列表中,反之亦然。 返回的列表支持所有可選的列表操作。

這種方法消除了顯式范圍操作的需要(通常存在于數(shù)組中的那種)。 通過傳遞 subList 視圖而不是整個列表,任何需要列表的操作都可以用作范圍操作。 例如,以下習(xí)慣用法從列表中刪除一系列元素:

      list.subList(from, to).clear(); 

可以為 indexOf(java.lang.Object) 和 lastIndexOf(java.lang.Object) 構(gòu)造類似的習(xí)語,并且可以將 Collections 類中的所有算法應(yīng)用于子列表。

如果后備列表(即此列表)以除通過返回列表之外的任何方式進(jìn)行結(jié)構(gòu)修改,則此方法返回的列表的語義將變?yōu)槲炊x。 (結(jié)構(gòu)修改是改變這個列表的大小,或者以其他方式擾亂它,使得正在進(jìn)行的迭代可能會產(chǎn)生不正確的結(jié)果。)

指定者:

接口 ListE 中的子列表

覆蓋:

AbstractListE 類中的子列表

參數(shù):

參數(shù)名稱 參數(shù)描述
fromIndex subList 的低端點(包括)
toIndex subList 的高端(不包括)

返回:

此列表中指定范圍的視圖

Throws:

Throw名稱 Throw描述
IndexOutOfBoundsException 如果端點索引值超出范圍(fromIndex < 0 || toIndex > size)
IllegalArgumentException 如果端點索引亂序(fromIndex > toIndex)

forEach

public void forEach(Consumer<? super E> action)

從接口復(fù)制的描述:Iterable

對 Iterable 的每個元素執(zhí)行給定的操作,直到處理完所有元素或該操作引發(fā)異常。 除非實現(xiàn)類另有規(guī)定,否則按迭代順序執(zhí)行操作(如果指定了迭代順序)。 操作引發(fā)的異常將轉(zhuǎn)發(fā)給調(diào)用者。

指定者:

接口 IterableE 中的 forEach

參數(shù):

參數(shù)名稱 參數(shù)描述
action 為每個元素執(zhí)行的操作

spliterator

public SpliteratorE spliterator()

在此列表中的元素上創(chuàng)建一個后期綁定和快速失敗的拆分器。

Spliterator 報告 Spliterator#SIZED、Spliterator#SUBSIZED 和 Spliterator#ORDERED。 覆蓋實現(xiàn)應(yīng)記錄附加特征值的報告。

指定者:

接口 CollectionE 中的分離器

指定者:

接口 IterableE 中的分離器

指定者:

接口 ListE 中的分離器

返回:

此列表中元素的拆分器

removeIf

public boolean removeIf(Predicate<? super E> filter)

從接口復(fù)制的描述:集合

刪除此集合中滿足給定謂詞的所有元素。 在迭代期間或由謂詞引發(fā)的錯誤或運行時異常將轉(zhuǎn)發(fā)給調(diào)用者。

指定者:

接口 CollectionE 中的 removeIf

參數(shù):

參數(shù)名稱 參數(shù)描述
filter 對于要刪除的元素返回 true 的謂詞

返回:

如果刪除了任何元素,則為 true

replaceAll

public void replaceAll(UnaryOperatorE operator)

從接口復(fù)制的描述:列表

將此列表的每個元素替換為將運算符應(yīng)用于該元素的結(jié)果。 操作員拋出的錯誤或運行時異常被轉(zhuǎn)發(fā)給調(diào)用者。

指定者:

接口 ListE 中的 replaceAll

參數(shù):

參數(shù)名稱 參數(shù)描述
operator 應(yīng)用于每個元素的運算符

sort

public void sort(Comparator<? super E> c)

從接口復(fù)制的描述:列表

根據(jù)指定 Comparator 產(chǎn)生的順序?qū)υ摿斜磉M(jìn)行排序。

此列表中的所有元素必須使用指定的比較器進(jìn)行相互比較(即 c.compare(e1, e2) 不得為列表中的任何元素 e1 和 e2 拋出 ClassCastException)。

如果指定的比較器為空,則此列表中的所有元素都必須實現(xiàn) Comparable 接口,并且應(yīng)使用元素的 Comparable。

此列表必須是可修改的,但不需要調(diào)整大小。

指定者:

在接口 ListE 中排序

參數(shù):

參數(shù)名稱 參數(shù)描述
c Comparator 用于比較列表元素。 空值表示應(yīng)該使用元素的 Comparable
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號