Class ImmutableTable.Builder<R,C,V>
java.lang.Object
com.google.common.collect.ImmutableTable.Builder<R,C,V>
- Enclosing class:
ImmutableTable<R,C, V>
A builder for creating immutable table instances, especially
public
static final tables ("constant tables"). Example:
static final ImmutableTable<Integer, Character, String> SPREADSHEET =
new ImmutableTable.Builder<Integer, Character, String>()
.put(1, 'A', "foo")
.put(1, 'B', "bar")
.put(2, 'A', "baz")
.build();
By default, the order in which cells are added to the builder determines
the iteration ordering of all views in the returned table, with putAll(Table) following the Table.cellSet() iteration order. However, if
orderRowsBy(Comparator) or orderColumnsBy(Comparator) is called, the views are
sorted by the supplied comparators.
For empty or single-cell immutable tables, ImmutableTable.of() and
ImmutableTable.of(Object, Object, Object) are even more convenient.
Builder instances can be reused - it is safe to call build()
multiple times to build multiple tables in series. Each table is a superset
of the tables created before it.
- Since:
- 11.0
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild()Returns a newly-created immutable table.orderColumnsBy(Comparator<? super C> columnComparator) Specifies the ordering of the generated table's columns.orderRowsBy(Comparator<? super R> rowComparator) Specifies the ordering of the generated table's rows.put(Table.Cell<? extends R, ? extends C, ? extends V> cell) Adds the givencellto the table, making it immutable if necessary.Associates the (rowKey,columnKey) pair withvaluein the built table.Associates all of the given table's keys and values in the built table.
-
Constructor Details
-
Builder
public Builder()Creates a new builder. The returned builder is equivalent to the builder generated byImmutableTable.builder().
-
-
Method Details
-
orderRowsBy
Specifies the ordering of the generated table's rows. -
orderColumnsBy
Specifies the ordering of the generated table's columns. -
put
-
put
Adds the givencellto the table, making it immutable if necessary. Duplicate key pairs are not allowed and will causebuild()to fail. -
putAll
Associates all of the given table's keys and values in the built table. Duplicate row key column key pairs are not allowed, and will causebuild()to fail.- Throws:
NullPointerException- if any key or value intableis null
-
build
Returns a newly-created immutable table.- Throws:
IllegalArgumentException- if duplicate key pairs were added
-