Class ImmutableBiMap.Builder<K,​V>

  • Enclosing class:
    ImmutableBiMap<K,​V>

    public static final class ImmutableBiMap.Builder<K,​V>
    extends ImmutableMap.Builder<K,​V>
    A builder for creating immutable bimap instances, especially public static final bimaps ("constant bimaps"). Example:
     {
            @code
    
            static final ImmutableBiMap WORD_TO_INT = new ImmutableBiMap.Builder()
                            .put("one", 1).put("two", 2).put("three", 3).build();
     }
     

    For small immutable bimaps, the ImmutableBiMap.of() methods are even more convenient.

    Builder instances can be reused - it is safe to call build() multiple times to build multiple bimaps in series. Each bimap is a superset of the bimaps created before it.

    Since:
    2.0 (imported from Google Collections Library)
    • Constructor Summary

      Constructors 
      Constructor Description
      Builder()
      Creates a new builder.
    • Constructor Detail

      • Builder

        public Builder()
        Creates a new builder. The returned builder is equivalent to the builder generated by ImmutableBiMap.builder().
    • Method Detail

      • putAll

        public ImmutableBiMap.Builder<K,​V> putAll​(java.util.Map<? extends K,​? extends V> map)
        Associates all of the given map's keys and values in the built bimap. Duplicate keys or values are not allowed, and will cause build() to fail.
        Overrides:
        putAll in class ImmutableMap.Builder<K,​V>
        Throws:
        java.lang.NullPointerException - if any key or value in map is null
      • build

        public ImmutableBiMap<K,​V> build()
        Returns a newly-created immutable bimap.
        Overrides:
        build in class ImmutableMap.Builder<K,​V>
        Throws:
        java.lang.IllegalArgumentException - if duplicate keys or values were added