org.apache.cxf.common.util
Class SortedArraySet<T>
java.lang.Object
org.apache.cxf.common.util.SortedArraySet<T>
- Type Parameters:
T
-
- All Implemented Interfaces:
- java.lang.Iterable<T>, java.util.Collection<T>, java.util.Set<T>, java.util.SortedSet<T>
public final class SortedArraySet<T>
- extends java.lang.Object
- implements java.util.SortedSet<T>
This class implements most of the Set interface, backed by a
sorted Array. This makes iterators very fast, lookups are log(n), but
adds are fairly expensive.
This class is also threadsafe, but without synchronizations. Lookups
and iterators will iterate over the state of the Set when the iterator
was created.
If no data is stored in the Set, it uses very little memory. The backing
array is created on demand.
This class is primarly useful for stuff that will be setup at startup, but
then iterated over MANY times during runtime.
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
SortedArraySet
public SortedArraySet()
clear
public void clear()
- Specified by:
clear
in interface java.util.Collection<T>
- Specified by:
clear
in interface java.util.Set<T>
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty
in interface java.util.Collection<T>
- Specified by:
isEmpty
in interface java.util.Set<T>
iterator
public java.util.Iterator<T> iterator()
- Specified by:
iterator
in interface java.lang.Iterable<T>
- Specified by:
iterator
in interface java.util.Collection<T>
- Specified by:
iterator
in interface java.util.Set<T>
size
public int size()
- Specified by:
size
in interface java.util.Collection<T>
- Specified by:
size
in interface java.util.Set<T>
add
public boolean add(T o)
- Specified by:
add
in interface java.util.Collection<T>
- Specified by:
add
in interface java.util.Set<T>
addAll
public boolean addAll(java.util.Collection<? extends T> c)
- Specified by:
addAll
in interface java.util.Collection<T>
- Specified by:
addAll
in interface java.util.Set<T>
containsAll
public boolean containsAll(java.util.Collection<?> c)
- Specified by:
containsAll
in interface java.util.Collection<T>
- Specified by:
containsAll
in interface java.util.Set<T>
contains
public boolean contains(java.lang.Object o)
- Specified by:
contains
in interface java.util.Collection<T>
- Specified by:
contains
in interface java.util.Set<T>
removeAll
public boolean removeAll(java.util.Collection<?> c)
- Specified by:
removeAll
in interface java.util.Collection<T>
- Specified by:
removeAll
in interface java.util.Set<T>
retainAll
public boolean retainAll(java.util.Collection<?> c)
- Specified by:
retainAll
in interface java.util.Collection<T>
- Specified by:
retainAll
in interface java.util.Set<T>
remove
public boolean remove(java.lang.Object o)
- Specified by:
remove
in interface java.util.Collection<T>
- Specified by:
remove
in interface java.util.Set<T>
toArray
public java.lang.Object[] toArray()
- Specified by:
toArray
in interface java.util.Collection<T>
- Specified by:
toArray
in interface java.util.Set<T>
toArray
public <X> X[] toArray(X[] a)
- Specified by:
toArray
in interface java.util.Collection<T>
- Specified by:
toArray
in interface java.util.Set<T>
equals
public boolean equals(java.lang.Object o)
- Specified by:
equals
in interface java.util.Collection<T>
- Specified by:
equals
in interface java.util.Set<T>
- Overrides:
equals
in class java.lang.Object
toString
public java.lang.String toString()
- Overrides:
toString
in class java.lang.Object
hashCode
public int hashCode()
- Specified by:
hashCode
in interface java.util.Collection<T>
- Specified by:
hashCode
in interface java.util.Set<T>
- Overrides:
hashCode
in class java.lang.Object
comparator
public java.util.Comparator<? super T> comparator()
- Specified by:
comparator
in interface java.util.SortedSet<T>
first
public T first()
- Specified by:
first
in interface java.util.SortedSet<T>
last
public T last()
- Specified by:
last
in interface java.util.SortedSet<T>
headSet
public java.util.SortedSet<T> headSet(T toElement)
- Specified by:
headSet
in interface java.util.SortedSet<T>
subSet
public java.util.SortedSet<T> subSet(T fromElement,
T toElement)
- Specified by:
subSet
in interface java.util.SortedSet<T>
tailSet
public java.util.SortedSet<T> tailSet(T fromElement)
- Specified by:
tailSet
in interface java.util.SortedSet<T>
Apache CXF