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:
    
     static final ImmutableBiMap<String, Integer> WORD_TO_INT =
         new ImmutableBiMap.Builder<String, Integer>()
             .put("one", 1)
             .put("two", 2)
             .put("three", 3)
             .buildOrThrow();
     

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

    By default, a Builder will generate bimaps that iterate over entries in the order they were inserted into the builder. For example, in the above example, WORD_TO_INT.entrySet() is guaranteed to iterate over the entries in the order "one"=1, "two"=2, "three"=3, and keySet() and values() respect the same order. If you want a different order, consider using orderEntriesByValue(Comparator), which changes this builder to sort entries by value.

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

    Since:
    2.0