Class UnmodifiableSortedMap<K,​V>

  • All Implemented Interfaces:
    java.util.Map<K,​V>, java.util.SortedMap<K,​V>

    @Immutable
    public class UnmodifiableSortedMap<K,​V>
    extends java.lang.Object
    implements java.util.SortedMap<K,​V>
    • Field Detail

      • entries

        protected final transient java.util.Map.Entry<K,​V>[] entries
      • size

        protected final transient int size
    • Method Detail

      • copyOf

        @Nonnull
        public static <K,​V> UnmodifiableSortedMap<K,​V> copyOf​(java.util.Map<K,​V> map)
      • sortedMapOf

        @Nonnull
        public static <K,​V> UnmodifiableSortedMap<K,​V> sortedMapOf​(@Nonnull
                                                                               K key,
                                                                               @Nonnull
                                                                               V value)
      • sortedMapOf

        @Nonnull
        public static <K,​V> UnmodifiableSortedMap<K,​V> sortedMapOf​(@Nonnull
                                                                               K k1,
                                                                               @Nonnull
                                                                               V v1,
                                                                               @Nonnull
                                                                               K k2,
                                                                               @Nonnull
                                                                               V v2)
      • sortedMapOf

        @Nonnull
        public static <K,​V> UnmodifiableSortedMap<K,​V> sortedMapOf​(@Nonnull
                                                                               K k1,
                                                                               @Nonnull
                                                                               V v1,
                                                                               @Nonnull
                                                                               K k2,
                                                                               @Nonnull
                                                                               V v2,
                                                                               @Nonnull
                                                                               K k3,
                                                                               @Nonnull
                                                                               V v3)
      • sortedMapOf

        @Nonnull
        public static <K,​V> UnmodifiableSortedMap<K,​V> sortedMapOf​(@Nonnull
                                                                               K k1,
                                                                               @Nonnull
                                                                               V v1,
                                                                               @Nonnull
                                                                               K k2,
                                                                               @Nonnull
                                                                               V v2,
                                                                               @Nonnull
                                                                               K k3,
                                                                               @Nonnull
                                                                               V v3,
                                                                               @Nonnull
                                                                               K k4,
                                                                               @Nonnull
                                                                               V v4)
      • sortedMapOf

        @Nonnull
        public static <K,​V> UnmodifiableSortedMap<K,​V> sortedMapOf​(@Nonnull
                                                                               K k1,
                                                                               @Nonnull
                                                                               V v1,
                                                                               @Nonnull
                                                                               K k2,
                                                                               @Nonnull
                                                                               V v2,
                                                                               @Nonnull
                                                                               K k3,
                                                                               @Nonnull
                                                                               V v3,
                                                                               @Nonnull
                                                                               K k4,
                                                                               @Nonnull
                                                                               V v4,
                                                                               @Nonnull
                                                                               K k5,
                                                                               @Nonnull
                                                                               V v5)
      • sortedMapOf

        @Nonnull
        public static <K,​V> UnmodifiableSortedMap<K,​V> sortedMapOf​(@Nonnull
                                                                               K k1,
                                                                               @Nonnull
                                                                               V v1,
                                                                               @Nonnull
                                                                               K k2,
                                                                               @Nonnull
                                                                               V v2,
                                                                               @Nonnull
                                                                               K k3,
                                                                               @Nonnull
                                                                               V v3,
                                                                               @Nonnull
                                                                               K k4,
                                                                               @Nonnull
                                                                               V v4,
                                                                               @Nonnull
                                                                               K k5,
                                                                               @Nonnull
                                                                               V v5,
                                                                               @Nonnull
                                                                               K k6,
                                                                               @Nonnull
                                                                               V v6)
      • sortedMapOf

        @Nonnull
        public static <K,​V> UnmodifiableSortedMap<K,​V> sortedMapOf​(@Nonnull
                                                                               K k1,
                                                                               @Nonnull
                                                                               V v1,
                                                                               @Nonnull
                                                                               K k2,
                                                                               @Nonnull
                                                                               V v2,
                                                                               @Nonnull
                                                                               K k3,
                                                                               @Nonnull
                                                                               V v3,
                                                                               @Nonnull
                                                                               K k4,
                                                                               @Nonnull
                                                                               V v4,
                                                                               @Nonnull
                                                                               K k5,
                                                                               @Nonnull
                                                                               V v5,
                                                                               @Nonnull
                                                                               K k6,
                                                                               @Nonnull
                                                                               V v6,
                                                                               @Nonnull
                                                                               K k7,
                                                                               @Nonnull
                                                                               V v7)
      • sortedMapOf

        @Nonnull
        public static <K,​V> UnmodifiableSortedMap<K,​V> sortedMapOf​(@Nonnull
                                                                               K k1,
                                                                               @Nonnull
                                                                               V v1,
                                                                               @Nonnull
                                                                               K k2,
                                                                               @Nonnull
                                                                               V v2,
                                                                               @Nonnull
                                                                               K k3,
                                                                               @Nonnull
                                                                               V v3,
                                                                               @Nonnull
                                                                               K k4,
                                                                               @Nonnull
                                                                               V v4,
                                                                               @Nonnull
                                                                               K k5,
                                                                               @Nonnull
                                                                               V v5,
                                                                               @Nonnull
                                                                               K k6,
                                                                               @Nonnull
                                                                               V v6,
                                                                               @Nonnull
                                                                               K k7,
                                                                               @Nonnull
                                                                               V v7,
                                                                               @Nonnull
                                                                               K k8,
                                                                               @Nonnull
                                                                               V v8)
      • sortedMapOf

        @Nonnull
        public static <K,​V> UnmodifiableSortedMap<K,​V> sortedMapOf​(@Nonnull
                                                                               K k1,
                                                                               @Nonnull
                                                                               V v1,
                                                                               @Nonnull
                                                                               K k2,
                                                                               @Nonnull
                                                                               V v2,
                                                                               @Nonnull
                                                                               K k3,
                                                                               @Nonnull
                                                                               V v3,
                                                                               @Nonnull
                                                                               K k4,
                                                                               @Nonnull
                                                                               V v4,
                                                                               @Nonnull
                                                                               K k5,
                                                                               @Nonnull
                                                                               V v5,
                                                                               @Nonnull
                                                                               K k6,
                                                                               @Nonnull
                                                                               V v6,
                                                                               @Nonnull
                                                                               K k7,
                                                                               @Nonnull
                                                                               V v7,
                                                                               @Nonnull
                                                                               K k8,
                                                                               @Nonnull
                                                                               V v8,
                                                                               @Nonnull
                                                                               K k9,
                                                                               @Nonnull
                                                                               V v9)
      • sortedMapOf

        @Nonnull
        public static <K,​V> UnmodifiableSortedMap<K,​V> sortedMapOf​(@Nonnull
                                                                               K k1,
                                                                               @Nonnull
                                                                               V v1,
                                                                               @Nonnull
                                                                               K k2,
                                                                               @Nonnull
                                                                               V v2,
                                                                               @Nonnull
                                                                               K k3,
                                                                               @Nonnull
                                                                               V v3,
                                                                               @Nonnull
                                                                               K k4,
                                                                               @Nonnull
                                                                               V v4,
                                                                               @Nonnull
                                                                               K k5,
                                                                               @Nonnull
                                                                               V v5,
                                                                               @Nonnull
                                                                               K k6,
                                                                               @Nonnull
                                                                               V v6,
                                                                               @Nonnull
                                                                               K k7,
                                                                               @Nonnull
                                                                               V v7,
                                                                               @Nonnull
                                                                               K k8,
                                                                               @Nonnull
                                                                               V v8,
                                                                               @Nonnull
                                                                               K k9,
                                                                               @Nonnull
                                                                               V v9,
                                                                               @Nonnull
                                                                               K k10,
                                                                               @Nonnull
                                                                               V v10)
      • builderOrderedBy

        @Nonnull
        public static <K,​V> UnmodifiableSortedMap.Builder<K,​V> builderOrderedBy​(java.util.Comparator<K> comparator)
      • builderOrderedBy

        @Nonnull
        public static <K,​V> UnmodifiableSortedMap.Builder<K,​V> builderOrderedBy​(int initialCapacity,
                                                                                            java.util.Comparator<K> comparator)
      • builderNaturalOrder

        @Nonnull
        public static <K extends java.lang.Comparable<K>,​V> UnmodifiableSortedMap.Builder<K,​V> builderNaturalOrder()
      • builderNaturalOrder

        @Nonnull
        public static <K extends java.lang.Comparable<K>,​V> UnmodifiableSortedMap.Builder<K,​V> builderNaturalOrder​(int initialCapacity)
      • builderReverseOrder

        @Nonnull
        public static <K extends java.lang.Comparable<K>,​V> UnmodifiableSortedMap.Builder<K,​V> builderReverseOrder()
      • builderReverseOrder

        @Nonnull
        public static <K extends java.lang.Comparable<K>,​V> UnmodifiableSortedMap.Builder<K,​V> builderReverseOrder​(int initialCapacity)
      • containsKey

        public boolean containsKey​(java.lang.Object o)
        Specified by:
        containsKey in interface java.util.Map<K,​V>
      • get

        public V get​(java.lang.Object o)
        Specified by:
        get in interface java.util.Map<K,​V>
      • comparator

        public java.util.Comparator<K> comparator()
        Specified by:
        comparator in interface java.util.SortedMap<K,​V>
      • subMap

        @Nonnull
        public UnmodifiableSortedMap<K,​V> subMap​(K start,
                                                       K end)
        Specified by:
        subMap in interface java.util.SortedMap<K,​V>
      • headMap

        @Nonnull
        public UnmodifiableSortedMap<K,​V> headMap​(K end)
        Specified by:
        headMap in interface java.util.SortedMap<K,​V>
      • tailMap

        @Nonnull
        public UnmodifiableSortedMap<K,​V> tailMap​(K start)
        Specified by:
        tailMap in interface java.util.SortedMap<K,​V>
      • firstKey

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

        public K lastKey()
        Specified by:
        lastKey in interface java.util.SortedMap<K,​V>
      • makeEntrySet

        @Nonnull
        protected java.util.Set<java.util.Map.Entry<K,​V>> makeEntrySet()
      • makeKeySet

        @Nonnull
        protected java.util.Set<K> makeKeySet()
      • orderedBy

        public UnmodifiableSortedMap<K,​V> orderedBy​(@Nonnull
                                                          java.util.Comparator<K> comparator)
        Get the map as a sorted map ordered by the specific comparator.
        Parameters:
        comparator - The comparator to make the map sorted for.
        Returns:
        The sorted map.
      • size

        public int size()
        Specified by:
        size in interface java.util.Map<K,​V>
      • isEmpty

        public boolean isEmpty()
        Specified by:
        isEmpty in interface java.util.Map<K,​V>
      • containsValue

        public boolean containsValue​(java.lang.Object o)
        Specified by:
        containsValue in interface java.util.Map<K,​V>
      • keySet

        @Nonnull
        public java.util.Set<K> keySet()
        Specified by:
        keySet in interface java.util.Map<K,​V>
      • values

        @Nonnull
        public java.util.Collection<V> values()
        Specified by:
        values in interface java.util.Map<K,​V>
      • entrySet

        @Nonnull
        public java.util.Set<java.util.Map.Entry<K,​V>> entrySet()
        Specified by:
        entrySet in interface java.util.Map<K,​V>
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface java.util.Map<K,​V>
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Specified by:
        equals in interface java.util.Map<K,​V>
        Overrides:
        equals in class java.lang.Object
      • put

        public V put​(K k,
                     V v)
        Specified by:
        put in interface java.util.Map<K,​V>
      • remove

        public V remove​(java.lang.Object o)
        Specified by:
        remove in interface java.util.Map<K,​V>
      • putAll

        public void putAll​(@Nonnull
                           java.util.Map<? extends K,​? extends V> map)
        Specified by:
        putAll in interface java.util.Map<K,​V>
      • clear

        public void clear()
        Specified by:
        clear in interface java.util.Map<K,​V>
      • entry

        protected static <K,​V> java.util.Map.Entry<K,​V> entry​(@Nonnull
                                                                          K key,
                                                                          @Nonnull
                                                                          V value)