集合的关系图:
Collection接口下有List 和 Set 两大接口,List接口的实现类有ArrayList、LinkedList等。Set接口的实现类HashSet、TreeSet等。
Collection接口中的方法有:
-
-
Modifier and Type Method and Description boolean
add(E e)
确保此集合包含指定的元素(可选操作)。
boolean
addAll(Collection<? extends E> c)
将指定集合中的所有元素添加到此集合(可选操作)。
void
clear()
从此集合中删除所有元素(可选操作)。
boolean
contains(Object o)
如果此集合包含指定的元素,则返回 true 。
boolean
containsAll(Collection<?> c)
如果此集合包含指定 集合中的所有元素,则返回true。
boolean
equals(Object o)
将指定的对象与此集合进行比较以获得相等性。
int
hashCode()
返回此集合的哈希码值。
boolean
isEmpty()
如果此集合不包含元素,则返回 true 。
Iterator<E>
iterator()
返回此集合中的元素的迭代器。
default Stream<E>
parallelStream()
返回可能并行的
Stream
与此集合作为其来源。boolean
remove(Object o)
从该集合中删除指定元素的单个实例(如果存在)(可选操作)。
boolean
removeAll(Collection<?> c)
删除指定集合中包含的所有此集合的元素(可选操作)。
default boolean
removeIf(Predicate<? super E> filter)
删除满足给定谓词的此集合的所有元素。
boolean
retainAll(Collection<?> c)
仅保留此集合中包含在指定集合中的元素(可选操作)。
int
size()
返回此集合中的元素数。
default Spliterator<E>
spliterator()
创建一个
Spliterator
在这个集合中的元素。default Stream<E>
stream()
返回以此集合作为源的顺序
Stream
。Object[]
toArray()
返回一个包含此集合中所有元素的数组。
<T> T[]
toArray(T[] a)
返回包含此集合中所有元素的数组; 返回的数组的运行时类型是指定数组的运行时类型。
-
List接口中的方法有:
-
-
Modifier and Type Method and Description boolean
add(E e)
将指定的元素追加到此列表的末尾(可选操作)。
void
add(int index, E element)
将指定的元素插入此列表中的指定位置(可选操作)。
boolean
addAll(Collection<? extends E> c)
按指定集合的迭代器(可选操作)返回的顺序将指定集合中的所有元素附加到此列表的末尾。
boolean
addAll(int index, Collection<? extends E> c)
将指定集合中的所有元素插入到此列表中的指定位置(可选操作)。
void
clear()
从此列表中删除所有元素(可选操作)。
boolean
contains(Object o)
如果此列表包含指定的元素,则返回 true 。
boolean
containsAll(Collection<?> c)
如果此列表包含指定 集合的所有元素,则返回true。
boolean
equals(Object o)
将指定的对象与此列表进行比较以获得相等性。
E
get(int index)
返回此列表中指定位置的元素。
int
hashCode()
返回此列表的哈希码值。
int
indexOf(Object o)
返回此列表中指定元素的第一次出现的索引,如果此列表不包含元素,则返回-1。
boolean
isEmpty()
如果此列表不包含元素,则返回 true 。
Iterator<E>
iterator()
以正确的顺序返回该列表中的元素的迭代器。
int
lastIndexOf(Object o)
返回此列表中指定元素的最后一次出现的索引,如果此列表不包含元素,则返回-1。
ListIterator<E>
listIterator()
返回列表中的列表迭代器(按适当的顺序)。
ListIterator<E>
listIterator(int index)
从列表中的指定位置开始,返回列表中的元素(按正确顺序)的列表迭代器。
E
remove(int index)
删除该列表中指定位置的元素(可选操作)。
boolean
remove(Object o)
从列表中删除指定元素的第一个出现(如果存在)(可选操作)。
boolean
removeAll(Collection<?> c)
从此列表中删除包含在指定集合中的所有元素(可选操作)。
default void
replaceAll(UnaryOperator<E> operator)
将该列表的每个元素替换为将该运算符应用于该元素的结果。
boolean
retainAll(Collection<?> c)
仅保留此列表中包含在指定集合中的元素(可选操作)。
E
set(int index, E element)
用指定的元素(可选操作)替换此列表中指定位置的元素。
int
size()
返回此列表中的元素数。
default void
sort(Comparator<? super E> c)
使用随附的
Comparator
排序此列表来比较元素。default Spliterator<E>
spliterator()
在此列表中的元素上创建一个
Spliterator
。List<E>
subList(int fromIndex, int toIndex)
返回此列表中指定的 fromIndex (含)和 toIndex之间的视图。
Object[]
toArray()
以正确的顺序(从第一个到最后一个元素)返回一个包含此列表中所有元素的数组。
<T> T[]
toArray(T[] a)
以正确的顺序返回一个包含此列表中所有元素的数组(从第一个到最后一个元素); 返回的数组的运行时类型是指定数组的运行时类型。
-
Set 接口中的方法有:
-
-
Modifier and Type Method and Description boolean
add(E e)
如果指定的元素不存在,则将其指定的元素添加(可选操作)。
boolean
addAll(Collection<? extends E> c)
将指定集合中的所有元素添加到此集合(如果尚未存在)(可选操作)。
void
clear()
从此集合中删除所有元素(可选操作)。
boolean
contains(Object o)
如果此集合包含指定的元素,则返回 true 。
boolean
containsAll(Collection<?> c)
返回 true如果此集合包含所有指定集合的元素。
boolean
equals(Object o)
将指定的对象与此集合进行比较以实现相等。
int
hashCode()
返回此集合的哈希码值。
boolean
isEmpty()
如果此集合不包含元素,则返回 true 。
Iterator<E>
iterator()
返回此集合中元素的迭代器。
boolean
remove(Object o)
如果存在,则从该集合中删除指定的元素(可选操作)。
boolean
removeAll(Collection<?> c)
从此集合中删除指定集合中包含的所有元素(可选操作)。
boolean
retainAll(Collection<?> c)
仅保留该集合中包含在指定集合中的元素(可选操作)。
int
size()
返回此集合中的元素数(其基数)。
default Spliterator<E>
spliterator()
在此集合中的元素上创建一个
Spliterator
。Object[]
toArray()
返回一个包含此集合中所有元素的数组。
<T> T[]
toArray(T[] a)
返回一个包含此集合中所有元素的数组; 返回的数组的运行时类型是指定数组的运行时类型。
-
Map接口中的方法有:
-
-
Modifier and Type Method and Description void
clear()
从该地图中删除所有的映射(可选操作)。
default V
compute(K key, BiFunction<? super K,? super V,? extends V> remappingFunction)
尝试计算指定键的映射及其当前映射的值(如果没有当前映射,
null
)。default V
computeIfAbsent(K key, Function<? super K,? extends V> mappingFunction)
如果指定的键尚未与值相关联(或映射到
null
),则尝试使用给定的映射函数计算其值,并将其输入到此映射中,除非null
。default V
computeIfPresent(K key, BiFunction<? super K,? super V,? extends V> remappingFunction)
如果指定的密钥的值存在且非空,则尝试计算给定密钥及其当前映射值的新映射。
boolean
containsKey(Object key)
如果此映射包含指定键的映射,则返回 true 。
boolean
containsValue(Object value)
如果此地图将一个或多个键映射到指定的值,则返回 true 。
Set<Map.Entry<K,V>>
entrySet()
返回此地图中包含的映射的
Set
视图。boolean
equals(Object o)
将指定的对象与此映射进行比较以获得相等性。
default void
forEach(BiConsumer<? super K,? super V> action)
对此映射中的每个条目执行给定的操作,直到所有条目都被处理或操作引发异常。
V
get(Object key)
返回到指定键所映射的值,或
null
如果此映射包含该键的映射。default V
getOrDefault(Object key, V defaultValue)
返回到指定键所映射的值,或
defaultValue
如果此映射包含该键的映射。int
hashCode()
返回此地图的哈希码值。
boolean
isEmpty()
如果此地图不包含键值映射,则返回 true 。
Set<K>
keySet()
返回此地图中包含的键的
Set
视图。default V
merge(K key, V value, BiFunction<? super V,? super V,? extends V> remappingFunction)
如果指定的键尚未与值相关联或与null相关联,则将其与给定的非空值相关联。
V
put(K key, V value)
将指定的值与该映射中的指定键相关联(可选操作)。
void
putAll(Map<? extends K,? extends V> m)
将指定地图的所有映射复制到此映射(可选操作)。
default V
putIfAbsent(K key, V value)
如果指定的键尚未与某个值相关联(或映射到
null
)将其与给定值相关联并返回null
,否则返回当前值。V
remove(Object key)
如果存在(从可选的操作),从该地图中删除一个键的映射。
default boolean
remove(Object key, Object value)
仅当指定的密钥当前映射到指定的值时删除该条目。
default V
replace(K key, V value)
只有当目标映射到某个值时,才能替换指定键的条目。
default boolean
replace(K key, V oldValue, V newValue)
仅当当前映射到指定的值时,才能替换指定键的条目。
default void
replaceAll(BiFunction<? super K,? super V,? extends V> function)
将每个条目的值替换为对该条目调用给定函数的结果,直到所有条目都被处理或该函数抛出异常。
int
size()
返回此地图中键值映射的数量。
Collection<V>
values()
返回此地图中包含的值的
Collection
视图。
-