Package mondrian.util
Class ArraySortedSet<E extends Comparable<E>>
- java.lang.Object
 - 
- java.util.AbstractCollection<E>
 - 
- java.util.AbstractSet<E>
 - 
- mondrian.util.ArraySortedSet<E>
 
 
 
 
- 
- Type Parameters:
 E-
- All Implemented Interfaces:
 Serializable,Iterable<E>,Collection<E>,Set<E>,SortedSet<E>
public class ArraySortedSet<E extends Comparable<E>> extends AbstractSet<E> implements SortedSet<E>, Serializable
Implementation ofSortedSetbased on an array. The array must already be sorted in natural order.- Author:
 - Julian Hyde
 - See Also:
 - Serialized Form
 
 
- 
- 
Constructor Summary
Constructors Constructor Description ArraySortedSet(E[] values)Creates a set backed by an array.ArraySortedSet(E[] values, int start, int end)Creates a set backed by a region of an array. 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Comparator<? super E>comparator()booleancontains(Object o)Efirst()SortedSet<E>headSet(E toElement)Iterator<E>iterator()Elast()ArraySortedSet<E>merge(ArraySortedSet<E> arrayToMerge)Performs a merge between twoArraySortedSetinstances in O(n) time, returning a third instance that doesn't include duplicates.intsize()SortedSet<E>subSet(E fromElement, E toElement)SortedSet<E>tailSet(E fromElement)Object[]toArray()<T> T[]toArray(T[] a)- 
Methods inherited from class java.util.AbstractSet
equals, hashCode, removeAll 
- 
Methods inherited from class java.util.AbstractCollection
add, addAll, clear, containsAll, isEmpty, remove, retainAll, toString 
- 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait 
- 
Methods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArray 
- 
Methods inherited from interface java.util.Set
add, addAll, clear, containsAll, equals, hashCode, isEmpty, remove, removeAll, retainAll 
- 
Methods inherited from interface java.util.SortedSet
spliterator 
 - 
 
 - 
 
- 
- 
Constructor Detail
- 
ArraySortedSet
public ArraySortedSet(E[] values)
Creates a set backed by an array. The array must be sorted, and is not copied.- Parameters:
 values- Array of values
 
- 
ArraySortedSet
public ArraySortedSet(E[] values, int start, int end)
Creates a set backed by a region of an array. The array must be sorted, and is not copied.- Parameters:
 values- Array of valuesstart- Index of start of regionend- Index of first element after end of region
 
 - 
 
- 
Method Detail
- 
iterator
public Iterator<E> iterator()
- Specified by:
 iteratorin interfaceCollection<E extends Comparable<E>>- Specified by:
 iteratorin interfaceIterable<E extends Comparable<E>>- Specified by:
 iteratorin interfaceSet<E extends Comparable<E>>- Specified by:
 iteratorin classAbstractCollection<E extends Comparable<E>>
 
- 
size
public int size()
- Specified by:
 sizein interfaceCollection<E extends Comparable<E>>- Specified by:
 sizein interfaceSet<E extends Comparable<E>>- Specified by:
 sizein classAbstractCollection<E extends Comparable<E>>
 
- 
comparator
public Comparator<? super E> comparator()
- Specified by:
 comparatorin interfaceSortedSet<E extends Comparable<E>>
 
- 
subSet
public SortedSet<E> subSet(E fromElement, E toElement)
- Specified by:
 subSetin interfaceSortedSet<E extends Comparable<E>>
 
- 
headSet
public SortedSet<E> headSet(E toElement)
- Specified by:
 headSetin interfaceSortedSet<E extends Comparable<E>>
 
- 
tailSet
public SortedSet<E> tailSet(E fromElement)
- Specified by:
 tailSetin interfaceSortedSet<E extends Comparable<E>>
 
- 
toArray
public Object[] toArray()
- Specified by:
 toArrayin interfaceCollection<E extends Comparable<E>>- Specified by:
 toArrayin interfaceSet<E extends Comparable<E>>- Overrides:
 toArrayin classAbstractCollection<E extends Comparable<E>>
 
- 
toArray
public <T> T[] toArray(T[] a)
- Specified by:
 toArrayin interfaceCollection<E extends Comparable<E>>- Specified by:
 toArrayin interfaceSet<E extends Comparable<E>>- Overrides:
 toArrayin classAbstractCollection<E extends Comparable<E>>
 
- 
merge
public ArraySortedSet<E> merge(ArraySortedSet<E> arrayToMerge)
Performs a merge between twoArraySortedSetinstances in O(n) time, returning a third instance that doesn't include duplicates.For example, ArraySortedSet("a", "b", "c").merge(ArraySortedSet("a", "c", "e")) returns ArraySortedSet("a", "b", "c", "e")}.
- Parameters:
 arrayToMerge- Other set to combine with this- Returns:
 - Set containing union of the elements of inputs
 - See Also:
 Util.intersect(java.util.SortedSet, java.util.SortedSet)
 
- 
contains
public boolean contains(Object o)
- Specified by:
 containsin interfaceCollection<E extends Comparable<E>>- Specified by:
 containsin interfaceSet<E extends Comparable<E>>- Overrides:
 containsin classAbstractCollection<E extends Comparable<E>>
 
 - 
 
 -