- java.lang.Object
-
- java.util.concurrent.ConcurrentHashMap.KeySetView<K,V>
-
- 实现的所有接口
-
Serializable
,Iterable<K>
,Collection<K>
,Set<K>
- Enclosing class:
- ConcurrentHashMap < K ,â€< V >
public static class ConcurrentHashMap.KeySetView<K,V> extends Object implements Set<K>, Serializable
将ConcurrentHashMap视图作为密钥的Set
,其中可以通过映射到公共值来可选地启用添加。 此类无法直接实例化。 见keySet()
,keySet(V)
,newKeySet()
,newKeySet(int)
。- 从以下版本开始:
- 1.8
- 另请参见:
- Serialized Form
-
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 boolean
add(K e)
通过将键映射到支持映射中的默认映射值(如果已定义),将指定键添加到此set视图。boolean
addAll(Collection<? extends K> c)
void
clear()
通过从支持此视图的地图中删除所有映射,从此视图中删除所有元素。boolean
contains(Object o)
如果此collection包含指定的元素,则返回true
。boolean
containsAll(Collection<?> c)
如果此集合包含指定集合中的所有元素,则返回true
。ConcurrentHashMap<K,V>
getMap()
返回支持此视图的地图。V
getMappedValue()
返回添加的默认映射值,如果不支持添加,则返回null
。boolean
isEmpty()
如果此集合不包含任何元素,则返回true
。Iterator<K>
iterator()
返回此集合中元素的迭代器。boolean
remove(Object o)
通过从支持映射中删除键(及其对应的值),从此映射视图中删除键。boolean
removeAll(Collection<?> c)
删除此集合的所有元素,这些元素也包含在指定的集合中(可选操作)。boolean
retainAll(Collection<?> c)
仅保留此集合中包含在指定集合中的元素(可选操作)。int
size()
返回此集合中的元素数。Object[]
toArray()
返回包含此集合中所有元素的数组。<T> T[]
toArray(T[] a)
返回一个包含此collection中所有元素的数组; 返回数组的运行时类型是指定数组的运行时类型。String
toString()
返回此集合的字符串表示形式。-
声明方法的类 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
声明方法的接口 java.util.Collection
parallelStream, removeIf, stream, toArray
-
-
-
-
方法详细信息
-
getMappedValue
public V getMappedValue()
返回添加的默认映射值,如果不支持添加,则返回null
。- 结果
-
添加的默认映射值,如果不支持,
null
-
contains
public boolean contains(Object o)
如果此collection包含指定的元素,则返回true
。 更正式地,返回true
当且仅当此集合包含至少一个元素e
Objects.equals(o, e)
。- Specified by:
-
contains
,界面Collection<K>
- Specified by:
-
contains
在接口Set<K>
- 参数
-
o
- 要测试其在此集合中的存在的元素 - 结果
-
true
如果此集合包含指定的元素 - 异常
-
NullPointerException
- 如果指定的键为空
-
remove
public boolean remove(Object o)
通过从支持映射中删除键(及其对应的值),从此映射视图中删除键。 如果键不在地图中,则此方法不执行任何操作。- Specified by:
-
remove
,界面Collection<K>
- Specified by:
-
remove
,界面Set<K>
- 参数
-
o
- 要从支持映射中删除的密钥 - 结果
-
true
如果支持映射包含指定的键 - 异常
-
NullPointerException
- 如果指定的键为空
-
iterator
public Iterator<K> iterator()
返回此集合中元素的迭代器。返回的迭代器是weakly consistent 。
-
add
public boolean add(K e)
通过将键映射到支持映射中的默认映射值(如果已定义),将指定键添加到此set视图。- Specified by:
-
add
,界面Collection<K>
- Specified by:
-
add
在接口Set<K>
- 参数
-
e
- 要添加的密钥 - 结果
-
true
如果此设置因呼叫而更改 - 异常
-
NullPointerException
- 如果指定的键为空 -
UnsupportedOperationException
- 如果未提供添加的默认映射值
-
addAll
public boolean addAll(Collection<? extends K> c)
- Specified by:
-
addAll
接口Collection<K>
- Specified by:
-
addAll
,界面Set<K>
- 参数
-
c
- 要插入此集合的元素 - 结果
-
true
如果此设置因呼叫而更改 - 异常
-
NullPointerException
- 如果集合或其任何元素是null
-
UnsupportedOperationException
- 如果未提供添加的默认映射值 - 另请参见:
-
Set.add(Object)
-
getMap
public ConcurrentHashMap<K,V> getMap()
返回支持此视图的地图。- 结果
- 支持此视图的地图
-
clear
public final void clear()
通过从支持此视图的地图中删除所有映射,从此视图中删除所有元素。- Specified by:
-
clear
,界面Collection<K>
-
size
public final int size()
从界面复制的说明:Collection
返回此集合中的元素数。 如果此集合包含超过Integer.MAX_VALUE
元素,则返回Integer.MAX_VALUE
。- Specified by:
-
size
,界面Collection<K>
- 结果
- 此集合中的元素数量
-
isEmpty
public final boolean isEmpty()
从界面复制的说明:Collection
如果此集合不包含任何元素,则返回true
。- Specified by:
-
isEmpty
,界面Collection<K>
- 结果
-
true
如果此集合不包含任何元素
-
toArray
public final Object[] toArray()
从界面复制的说明:Collection
返回包含此集合中所有元素的数组。 如果此集合对其迭代器返回的元素的顺序做出任何保证,则此方法必须以相同的顺序返回元素。 返回的数组runtime component type是Object
。返回的数组将是“安全的”,因为此集合不维护对它的引用。 (换句话说,即使此集合由数组支持,此方法也必须分配新数组)。 因此调用者可以自由修改返回的数组。
- Specified by:
-
toArray
接口Collection<K>
- 结果
-
一个数组,其
runtime component type是
Object
,包含此集合中的所有元素
-
toArray
public final <T> T[] toArray(T[] a)
从界面复制的说明:Collection
返回一个包含此collection中所有元素的数组; 返回数组的运行时类型是指定数组的运行时类型。 如果集合适合指定的数组,则返回其中。 否则,将使用指定数组的运行时类型和此集合的大小分配新数组。如果此集合适合具有备用空间的指定数组(即,数组具有比此集合更多的元素),则紧跟集合结尾的数组中的元素将设置为
null
。 ( 仅当调用者知道此集合不包含任何null
元素时,这在确定此集合的长度时很有用。)如果此集合对其迭代器返回的元素的顺序做出任何保证,则此方法必须以相同的顺序返回元素。
- Specified by:
-
toArray
,界面Collection<K>
- 参数类型
-
T
- 要包含集合的数组的组件类型 - 参数
-
a
- 要存储此集合的元素的数组(如果它足够大); 否则,为此目的分配相同运行时类型的新数组。 - 结果
- 包含此集合中所有元素的数组
-
toString
public final String toString()
返回此集合的字符串表示形式。 字符串表示形式由集合元素的字符串表示形式组成,按迭代器返回的顺序排列,用方括号括起来("[]"
)。 相邻元素由字符", "
(逗号和空格)分隔。 元素将转换为字符串,如String.valueOf(Object)
所示 。
-
containsAll
public final boolean containsAll(Collection<?> c)
从界面复制的说明:Collection
如果此集合包含指定集合中的所有元素,则返回true
。- Specified by:
-
containsAll
,界面Collection<K>
- 参数
-
c
- 要检查此集合中的包含的集合 - 结果
-
true
此集合是否包含指定集合中的所有元素 - 另请参见:
-
Collection.contains(Object)
-
removeAll
public boolean removeAll(Collection<?> c)
从界面复制的说明:Collection
删除此集合的所有元素,这些元素也包含在指定的集合中(可选操作)。 此调用返回后,此集合将不包含与指定集合相同的元素。- Specified by:
-
removeAll
接口Collection<K>
- 参数
-
c
- 包含要从此集合中删除的元素的集合 - 结果
-
true
如果此集合因呼叫而更改 - 另请参见:
-
Collection.remove(Object)
,Collection.contains(Object)
-
retainAll
public final boolean retainAll(Collection<?> c)
从界面复制的说明:Collection
仅保留此集合中包含在指定集合中的元素(可选操作)。 换句话说,从此集合中删除未包含在指定集合中的所有元素。- Specified by:
-
retainAll
,界面Collection<K>
- 参数
-
c
- 包含要在此集合中保留的元素的集合 - 结果
-
true
如果此集合因呼叫而更改 - 另请参见:
-
Collection.remove(Object)
,Collection.contains(Object)
-
-