java.lang.Object java.util.AbstractCollection<E> java.util.AbstractSet<E> java.util.EnumSet<E>
public abstract class EnumSet<E extends Enum<E>>
A specialized Set
implementation for use with enum types. All of the elements in an enum set must come from a single enum type that is specified, explicitly or implicitly, when the set is created. Enum sets are represented internally as bit vectors. This representation is extremely compact and efficient. The space and time performance of this class should be good enough to allow its use as a high-quality, typesafe alternative to traditional int-based "bit flags." Even bulk operations (such as containsAll and retainAll) should run very quickly if the specified collection is also an enum set.
The iterator returned by the iteratormethod traverses the elements in their natural order (the order in which the enum constants are declared). The returned iterator is weakly consistent: it will never throw ConcurrentModificationException
and it may or may not show the effects of any modifications to the set that occur while the iteration is in progress.
Null elements are not permitted. Attempts to insert a null element will throw NullPointerException
. Attempts to test for the presence of a null element or to remove one will, however, function properly.
Like most collection implementations EnumSet is not synchronized. If multiple threads access an enum set concurrently, and at least one of the threads modifies the set, it should be synchronized externally. This is typically accomplished by synchronizing on some object that naturally encapsulates the enum set. If no such object exists, the set should be "wrapped" using the Collections.synchronizedSet(java.util.Set )
method. This is best done at creation time, to prevent accidental unsynchronized access:
Set<MyEnum> s = Collections.synchronizedSet(EnumSet.noneOf(Foo.class));
Implementation note: All basic operations execute in constant time. They are likely (though not guaranteed) to be much faster than their HashSet
counterparts. Even bulk operations, such as addAll()
and AbstractSet.removeAll(java.util.Collection)
execute in constant time if the parameter is another EnumSet instance.
This class is a member of the Java Collections Framework.
EnumMap
static <E extends Enum<E>>
EnumSet<E>
allOf(Class<E> elementType)
EnumSet<E>
clone()
static <E extends Enum<E>>
EnumSet<E>
complementOf(EnumSet<E> s)
static <E extends Enum<E>>
EnumSet<E>
copyOf(Collection<E> c)
static <E extends Enum<E>>
EnumSet<E>
copyOf(EnumSet<E> s)
static <E extends Enum<E>>
EnumSet<E>
noneOf(Class<E> elementType)
static <E extends Enum<E>>
EnumSet<E>
of(E e)
static <E extends Enum<E>>
EnumSet<E>
of(E first, E... rest)
static <E extends Enum<E>>
EnumSet<E>
of(E e1, E e2)
static <E extends Enum<E>>
EnumSet<E>
of(E e1, E e2, E e3)
static <E extends Enum<E>>
EnumSet<E>
of(E e1, E e2, E e3, E e4)
static <E extends Enum<E>>
EnumSet<E>
of(E e1, E e2, E e3, E e4, E e5)
static <E extends Enum<E>>
EnumSet<E>
range(E from, E to)
add, addAll, clear, contains, containsAll, isEmpty, iterator, remove, retainAll, size, toArray, toArray, toString
Methods inherited from interface java.util.Set add, addAll, clear, contains, containsAll, isEmpty, iterator, remove, retainAll, size, toArray, toArray
noneOf
public static <E extends Enum<E>> EnumSet<E> noneOf(Class<E> elementType)
elementType
- the class object of the element type for this enum set
NullPointerException
- if elementType is null
public static <E extends Enum<E>> EnumSet<E> allOf(Class<E> elementType)
elementType
- the class object of the element type for this enum set
NullPointerException
- if elementType is null
public static <E extends Enum<E>> EnumSet<E> copyOf(EnumSet<E> s)
s
- the enum set from which to initialize this enum set
NullPointerException
- if s is null
public static <E extends Enum<E>> EnumSet<E> copyOf(Collection<E> c)
copyOf(EnumSet)
. Otherwise, the specified collection must contain at least one element (in order to determine the new enum set's element type).
c
- the collection from which to initialize this enum set
IllegalArgumentException
- if c is not an EnumSet instance and contains no elements
NullPointerException
- if c is null
public static <E extends Enum<E>> EnumSet<E> complementOf(EnumSet<E> s)
s
- the enum set from whose complement to initialize this enum set
NullPointerException
- if s is null
public static <E extends Enum<E>> EnumSet<E> of(E e)
e
- the element that this set is to contain initially
NullPointerException
- if e is null
public static <E extends Enum<E>> EnumSet<E> of(E e1, E e2)
e1
- an element that this set is to contain initially
e2
- another element that this set is to contain initially
NullPointerException
- if any parameters are null
public static <E extends Enum<E>> EnumSet<E> of(E e1, E e2, E e3)
e1
- an element that this set is to contain initially
e2
- another element that this set is to contain initially
e3
- another element that this set is to contain initially
NullPointerException
- if any parameters are null
public static <E extends Enum<E>> EnumSet<E> of(E e1, E e2, E e3, E e4)
e1
- an element that this set is to contain initially
e2
- another element that this set is to contain initially
e3
- another element that this set is to contain initially
e4
- another element that this set is to contain initially
NullPointerException
- if any parameters are null
public static <E extends Enum<E>> EnumSet<E> of(E e1, E e2, E e3, E e4, E e5)
e1
- an element that this set is to contain initially
e2
- another element that this set is to contain initially
e3
- another element that this set is to contain initially
e4
- another element that this set is to contain initially
e5
- another element that this set is to contain initially
NullPointerException
- if any parameters are null
public static <E extends Enum<E>> EnumSet<E> of(E first, E... rest)
first
- an element that the set is to contain initially
rest
- the remaining elements the set is to contain initially
NullPointerException
- if any of the specified elements are null, or if rest is null
public static <E extends Enum<E>> EnumSet<E> range(E from, E to)
from
- the first element in the range
to
- the last element in the range
NullPointerException
- if first or last are null
IllegalArgumentException
- if first.compareTo(last) > 0
public EnumSet<E> clone()
clone
in class Object
Cloneable
Copyright © 2004, 2010 Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4