net.cscott.jutil
public abstract class Default extends Object
Default
contains one-off or 'standard, no-frills'
implementations of simple Iterator
s,
Collection
s, and Comparator
s.
Version: $Id: Default.java,v 1.3 2004/01/13 20:47:05 cananian Exp $
Nested Class Summary | |
---|---|
static class | Default.PairList<A,B> |
Field Summary | |
---|---|
static Comparator<Comparable> | comparator A Comparator for objects that implement
Comparable . |
static SortedMap | EMPTY_MAP An empty map. |
static MultiMap | EMPTY_MULTIMAP An empty multi-map. |
static Iterator | nullIterator An Iterator over the empty set. |
Method Summary | |
---|---|
static <E> List<E> | EMPTY_LIST() An empty list. |
static <E> SortedSet<E> | EMPTY_SET() An empty set; the parameterized version.
|
static <K,V> Entry<K,V> | entry(K key, V value) A pair constructor method more appropriate for Set
views of Map s and MultiMap s.
|
static <E> Iterator<E> | nullIterator() |
static <A,B> PairList<A,B> | pair(A left, B right) A pair constructor method. |
static <E> Iterator<E> | singletonIterator(E o) An Iterator over a singleton set. |
static <A> Collection<A> | unmodifiableCollection(Collection<? extends A> cc)
Improved unmodifiableCollection() class that
helps w/ covariant subtyping. |
static <E> Iterator<E> | unmodifiableIterator(Iterator<E> i) An unmodifiable version of the given iterator. |
Comparator
for objects that implement
Comparable
.java.util.Collections
.Iterator
over the empty set.Set
views of Map
s and MultiMap
s.
The returned object is an instance of Map.Entry
;
the only (real) difference from the pairs returned by
Default.pair()
is the definition of
hashCode()
, which corresponds to Map.Entry
(being key.hashCode() ^ value.hashCode()
) rather
than List
(which would be
31*(31+key.hashCode())+value.hashCode()
). This is
an annoying distinction; I wish the JDK API authors had made
these consistent. The Map.Entry
returned is immutable.hashCode()
and equals()
"properly" so they can be used as keys
in hashtables and etc. They are implemented as mutable lists of
fixed size 2.Iterator
over a singleton set.unmodifiableCollection()
class that
helps w/ covariant subtyping.