Class Object2CharRBTreeMap<K>

  • All Implemented Interfaces:
    Function<K,​java.lang.Character>, Object2CharFunction<K>, Object2CharMap<K>, Object2CharSortedMap<K>, java.io.Serializable, java.lang.Cloneable, java.util.function.Function<K,​java.lang.Character>, java.util.function.ToIntFunction<K>, java.util.Map<K,​java.lang.Character>, java.util.SortedMap<K,​java.lang.Character>

    public class Object2CharRBTreeMap<K>
    extends AbstractObject2CharSortedMap<K>
    implements java.io.Serializable, java.lang.Cloneable
    A type-specific red-black tree map with a fast, small-footprint implementation.

    The iterators provided by the views of this class are type-specific bidirectional iterators. Moreover, the iterator returned by iterator() can be safely cast to a type-specific list iterator.

    See Also:
    Serialized Form
    • Constructor Detail

      • Object2CharRBTreeMap

        public Object2CharRBTreeMap()
        Creates a new empty tree map.
      • Object2CharRBTreeMap

        public Object2CharRBTreeMap​(java.util.Comparator<? super K> c)
        Creates a new empty tree map with the given comparator.
        Parameters:
        c - a (possibly type-specific) comparator.
      • Object2CharRBTreeMap

        public Object2CharRBTreeMap​(java.util.Map<? extends K,​? extends java.lang.Character> m)
        Creates a new tree map copying a given map.
        Parameters:
        m - a Map to be copied into the new tree map.
      • Object2CharRBTreeMap

        public Object2CharRBTreeMap​(java.util.SortedMap<K,​java.lang.Character> m)
        Creates a new tree map copying a given sorted map (and its Comparator).
        Parameters:
        m - a SortedMap to be copied into the new tree map.
      • Object2CharRBTreeMap

        public Object2CharRBTreeMap​(Object2CharMap<? extends K> m)
        Creates a new tree map copying a given map.
        Parameters:
        m - a type-specific map to be copied into the new tree map.
      • Object2CharRBTreeMap

        public Object2CharRBTreeMap​(Object2CharSortedMap<K> m)
        Creates a new tree map copying a given sorted map (and its Comparator).
        Parameters:
        m - a type-specific sorted map to be copied into the new tree map.
      • Object2CharRBTreeMap

        public Object2CharRBTreeMap​(K[] k,
                                    char[] v,
                                    java.util.Comparator<? super K> c)
        Creates a new tree map using the elements of two parallel arrays and the given comparator.
        Parameters:
        k - the array of keys of the new tree map.
        v - the array of corresponding values in the new tree map.
        c - a (possibly type-specific) comparator.
        Throws:
        java.lang.IllegalArgumentException - if k and v have different lengths.
      • Object2CharRBTreeMap

        public Object2CharRBTreeMap​(K[] k,
                                    char[] v)
        Creates a new tree map using the elements of two parallel arrays.
        Parameters:
        k - the array of keys of the new tree map.
        v - the array of corresponding values in the new tree map.
        Throws:
        java.lang.IllegalArgumentException - if k and v have different lengths.
    • Method Detail

      • addTo

        public char addTo​(K k,
                          char incr)
        Adds an increment to value currently associated with a key.

        Note that this method respects the default return value semantics: when called with a key that does not currently appears in the map, the key will be associated with the default return value plus the given increment.

        Parameters:
        k - the key.
        incr - the increment.
        Returns:
        the old value, or the default return value if no value was present for the given key.
      • clear

        public void clear()
        Description copied from interface: Object2CharMap
        Removes all of the mappings from this map (optional operation). The map will be empty after this call returns.
        Specified by:
        clear in interface Function<K,​java.lang.Character>
        Specified by:
        clear in interface java.util.Map<K,​java.lang.Character>
        Specified by:
        clear in interface Object2CharMap<K>
        See Also:
        Map.clear()
      • containsKey

        public boolean containsKey​(java.lang.Object k)
        Description copied from class: AbstractObject2CharMap
        Returns true if this function contains a mapping for the specified key.
        Specified by:
        containsKey in interface Function<K,​java.lang.Character>
        Specified by:
        containsKey in interface java.util.Map<K,​java.lang.Character>
        Specified by:
        containsKey in interface Object2CharMap<K>
        Overrides:
        containsKey in class AbstractObject2CharMap<K>
        Parameters:
        k - the key.
        Returns:
        true if this function associates a value to key.
        See Also:
        Map.containsKey(Object)
      • size

        public int size()
        Description copied from interface: Object2CharMap
        Returns the number of key/value mappings in this map. If the map contains more than Integer.MAX_VALUE elements, returns Integer.MAX_VALUE.
        Specified by:
        size in interface Function<K,​java.lang.Character>
        Specified by:
        size in interface java.util.Map<K,​java.lang.Character>
        Specified by:
        size in interface Object2CharMap<K>
        Returns:
        the number of key-value mappings in this map.
        See Also:
        Size64
      • isEmpty

        public boolean isEmpty()
        Specified by:
        isEmpty in interface java.util.Map<K,​java.lang.Character>
        Overrides:
        isEmpty in class AbstractObject2CharMap<K>
      • firstKey

        public K firstKey()
        Specified by:
        firstKey in interface java.util.SortedMap<K,​java.lang.Character>
      • lastKey

        public K lastKey()
        Specified by:
        lastKey in interface java.util.SortedMap<K,​java.lang.Character>
      • keySet

        public ObjectSortedSet<K> keySet()
        Returns a type-specific sorted set view of the keys contained in this map.

        In addition to the semantics of Map.keySet(), you can safely cast the set returned by this call to a type-specific sorted set interface.

        Specified by:
        keySet in interface java.util.Map<K,​java.lang.Character>
        Specified by:
        keySet in interface Object2CharMap<K>
        Specified by:
        keySet in interface Object2CharSortedMap<K>
        Specified by:
        keySet in interface java.util.SortedMap<K,​java.lang.Character>
        Overrides:
        keySet in class AbstractObject2CharSortedMap<K>
        Returns:
        a type-specific sorted set view of the keys contained in this map.
        See Also:
        Map.keySet()
      • values

        public CharCollection values()
        Returns a type-specific collection view of the values contained in this map.

        In addition to the semantics of Map.values(), you can safely cast the collection returned by this call to a type-specific collection interface.

        Specified by:
        values in interface java.util.Map<K,​java.lang.Character>
        Specified by:
        values in interface Object2CharMap<K>
        Specified by:
        values in interface Object2CharSortedMap<K>
        Specified by:
        values in interface java.util.SortedMap<K,​java.lang.Character>
        Overrides:
        values in class AbstractObject2CharSortedMap<K>
        Returns:
        a type-specific collection view of the values contained in this map.
        See Also:
        Map.values()
      • comparator

        public java.util.Comparator<? super K> comparator()
        Description copied from interface: Object2CharSortedMap
        Returns the comparator associated with this sorted set, or null if it uses its keys' natural ordering.
        Specified by:
        comparator in interface Object2CharSortedMap<K>
        Specified by:
        comparator in interface java.util.SortedMap<K,​java.lang.Character>
        See Also:
        SortedMap.comparator()
      • headMap

        public Object2CharSortedMap<K> headMap​(K to)
        Description copied from interface: Object2CharSortedMap
        Returns a view of the portion of this sorted map whose keys are strictly less than toKey.
        Specified by:
        headMap in interface Object2CharSortedMap<K>
        Specified by:
        headMap in interface java.util.SortedMap<K,​java.lang.Character>
        See Also:
        SortedMap.headMap(Object)
      • tailMap

        public Object2CharSortedMap<K> tailMap​(K from)
        Description copied from interface: Object2CharSortedMap
        Returns a view of the portion of this sorted map whose keys are greater than or equal to fromKey.
        Specified by:
        tailMap in interface Object2CharSortedMap<K>
        Specified by:
        tailMap in interface java.util.SortedMap<K,​java.lang.Character>
        See Also:
        SortedMap.tailMap(Object)
      • subMap

        public Object2CharSortedMap<K> subMap​(K from,
                                              K to)
        Description copied from interface: Object2CharSortedMap
        Returns a view of the portion of this sorted map whose keys range from fromKey, inclusive, to toKey, exclusive.
        Specified by:
        subMap in interface Object2CharSortedMap<K>
        Specified by:
        subMap in interface java.util.SortedMap<K,​java.lang.Character>
        See Also:
        SortedMap.subMap(Object,Object)
      • clone

        public Object2CharRBTreeMap<K> clone()
        Returns a deep copy of this tree map.

        This method performs a deep copy of this tree map; the data stored in the set, however, is not cloned. Note that this makes a difference only for object keys.

        Returns:
        a deep copy of this tree map.