java.lang.Object
java.util.concurrent.ConcurrentHashMap.KeySetView<K,V>
- 类型参数:
K- 键的类型V- 支持map中值的类型
- 所有已实现的接口:
Serializable,Iterable<K>,Collection<K>,Set<K>
- 封闭类:
ConcurrentHashMap<K,V>
public static final class ConcurrentHashMap.KeySetView<K,V> extends Object implements Set <K>, Serializable
将 ConcurrentHashMap 视为键的
Set 视图,其中可以通过映射到公共值来选择性地启用添加。此类不能直接实例化。参见 keySet() 、keySet(V) 、newKeySet() 、newKeySet(int) 。
- 自从:
- 1.8
- 参见:
-
方法总结
修饰符和类型方法描述boolean通过将键映射到支持map中的默认映射值(如果已定义),将指定的键添加到此集合视图。booleanaddAll(Collection<? extends K> c) 将指定集合中的所有元素添加到此集合中,就像对每个元素调用add(K)一样。final voidclear()通过从支持此视图的map中删除所有映射,从此视图中删除所有元素。boolean如果此集合包含指定元素,则返回true。final booleancontainsAll(Collection<?> c) 如果此集合包含指定集合中的所有元素,则返回true。boolean指示某个其他对象是否“等于”这个对象。getMap()返回支持此视图的map。返回添加的默认映射值,如果不支持添加,则返回null。inthashCode()返回对象的哈希码值。final booleanisEmpty()如果此集合不包含任何元素,则返回true。iterator()返回此集合中元素的迭代器。boolean通过从支持map中删除键(及其对应的值),从此map视图中删除键。booleanremoveAll(Collection<?> c) 删除此集合的所有也包含在指定集合中的元素(可选操作)。final booleanretainAll(Collection<?> c) 仅保留此集合中包含在指定集合中的元素(可选操作)。final intsize()返回此集合中的元素数。final Object[]toArray()返回包含此集合中所有元素的数组。final <T> T[]toArray(T[] a) 返回包含此集合中所有元素的数组;返回数组的运行时类型是指定数组的类型。final StringtoString()返回此集合的字符串表示形式。在类 java.lang.Object 中声明的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait在接口 java.util.Collection 中声明的方法
parallelStream, removeIf, stream, toArray在接口 java.util.Set 中声明的方法
clear, containsAll, isEmpty, removeAll, retainAll, size, spliterator, toArray, toArray
-
方法详情
-
getMappedValue
返回添加的默认映射值,如果不支持添加,则返回null。- 返回:
-
添加的默认映射值,如果不支持则为
null
-
contains
如果此集合包含指定元素,则返回true。更正式地说,返回true当且仅当此集合包含至少一个元素e使得Objects.equals(o, e)。- 指定者:
contains在接口Collection<K>中- 指定者:
contains在接口Set<K>中- 参数:
o- 要测试其在此集合中是否存在的元素- 返回:
true如果这个集合包含指定的元素- 抛出:
NullPointerException- 如果指定的键为空
-
remove
通过从支持map中删除键(及其对应的值),从此map视图中删除键。如果键不在map中,则此方法不执行任何操作。- 指定者:
remove在接口Collection<K>中- 指定者:
remove在接口Set<K>中- 参数:
o- 要从支持map中删除的键- 返回:
true如果支持map包含指定的键- 抛出:
NullPointerException- 如果指定的键为空
-
iterator
返回此集合中元素的迭代器。返回的迭代器是 弱一致 。
-
add
通过将键映射到支持map中的默认映射值(如果已定义),将指定的键添加到此集合视图。- 指定者:
add在接口Collection<K>中- 指定者:
add在接口Set<K>中- 参数:
e- 要添加的密钥- 返回:
true如果此集合因调用而更改- 抛出:
NullPointerException- 如果指定的键为空UnsupportedOperationException- 如果没有提供添加的默认映射值
-
addAll
将指定集合中的所有元素添加到此集合中,就像对每个元素调用add(K)一样。- 指定者:
addAll在接口Collection<K>中- 指定者:
addAll在接口Set<K>中- 参数:
c- 要插入到该集合中的元素- 返回:
true如果此集合因调用而更改- 抛出:
NullPointerException- 如果集合或其任何元素是nullUnsupportedOperationException- 如果没有提供添加的默认映射值- 参见:
-
hashCode
public int hashCode()从类复制的描述:Object返回对象的哈希码值。支持此方法是为了哈希表的好处,例如HashMap提供的哈希表。hashCode的总合同为: -
equals
从类复制的描述:Object指示某个其他对象是否“等于”这个对象。equals方法在非空对象引用上实现等价关系:- 这是反身的:对于任何非空参考值
x,x.equals(x)应该返回true。 - 这是对称的:对于任何非空参考值
x和y,当且仅当y.equals(x)返回true时,x.equals(y)应返回true。 - 这是transitive:对于任何非空引用值
x、y和z,如果x.equals(y)返回true并且y.equals(z)返回true,那么x.equals(z)应该返回true。 - 这是持续的:对于任何非空引用值
x和y,x.equals(y)的多次调用一致地返回true或一致地返回false,前提是在对象的equals比较中使用的信息没有被修改。 - 对于任何非空参考值
x,x.equals(null)应该返回false。
等价关系将其操作的元素划分为等价类;等价类的所有成员彼此相等。等价类的成员可以相互替代,至少出于某些目的。
- 这是反身的:对于任何非空参考值
-
getMap
返回支持此视图的map。- 返回:
- 支持此视图的map
-
clear
public final void clear()通过从支持此视图的map中删除所有映射,从此视图中删除所有元素。- 指定者:
clear在接口Collection<K>中
-
size
public final int size()从接口Collection复制的描述返回此集合中的元素数。如果此集合包含超过Integer.MAX_VALUE个元素,则返回Integer.MAX_VALUE。- 指定者:
size在接口Collection<K>中- 返回:
- 此集合中的元素数
-
isEmpty
public final boolean isEmpty()从接口Collection复制的描述如果此集合不包含任何元素,则返回true。- 指定者:
isEmpty在接口Collection<K>中- 返回:
true如果此集合不包含任何元素
-
toArray
从接口Collection复制的描述返回包含此集合中所有元素的数组。如果此集合对其迭代器返回其元素的顺序作出任何保证,则此方法必须以相同的顺序返回元素。返回数组的 运行时组件类型 是Object。返回的数组将是“安全的”,因为此集合不维护对它的引用。 (换句话说,即使此集合由数组支持,此方法也必须分配一个新数组)。调用者因此可以自由修改返回的数组。
- 指定者:
toArray在接口Collection<K>中- 返回:
-
一个数组,其 运行时组件类型 为
Object,包含此集合中的所有元素
-
toArray
public final <T> T[] toArray(T[] a) 从接口Collection复制的描述返回包含此集合中所有元素的数组;返回数组的运行时类型是指定数组的类型。如果集合适合指定的数组,则在其中返回。否则,将使用指定数组的运行时类型和此集合的大小分配一个新数组。如果此集合适合指定的数组并有剩余空间(即,数组的元素多于此集合),则紧接集合末尾的数组中的元素设置为
null。 (这对于确定此集合的长度很有用仅有的如果调用者知道此集合不包含任何null元素。)如果此集合对其迭代器返回其元素的顺序作出任何保证,则此方法必须以相同的顺序返回元素。
- 指定者:
toArray在接口Collection<K>中- 类型参数:
T- 包含集合的数组的组件类型- 参数:
a- 这个集合的元素要存储到的数组,如果它足够大的话;否则,为此分配一个相同运行时类型的新数组。- 返回:
- 包含此集合中所有元素的数组
-
toString
返回此集合的字符串表示形式。字符串表示形式由集合元素的字符串表示形式组成,这些元素按照其迭代器返回的顺序排列,括在方括号 ("[]") 中。相邻元素由字符", "(逗号和空格)分隔。元素按String.valueOf(Object)转换为字符串。 -
containsAll
从接口Collection复制的描述如果此集合包含指定集合中的所有元素,则返回true。- 指定者:
containsAll在接口Collection<K>中- 参数:
c- 要检查的集合是否包含在此集合中- 返回:
true如果此集合包含指定集合中的所有元素- 参见:
-
removeAll
从接口Collection复制的描述删除此集合的所有也包含在指定集合中的元素(可选操作)。此调用返回后,此集合将不包含与指定集合共有的元素。- 指定者:
removeAll在接口Collection<K>中- 参数:
c- 包含要从此集合中删除的元素的集合- 返回:
true如果此集合因调用而更改- 参见:
-
retainAll
从接口Collection复制的描述仅保留此集合中包含在指定集合中的元素(可选操作)。换句话说,从该集合中移除所有未包含在指定集合中的元素。- 指定者:
retainAll在接口Collection<K>中- 参数:
c- 包含要保留在此集合中的元素的集合- 返回:
true如果此集合因调用而更改- 参见:
-