Package com.google.common.collect
Class AbstractTable<R,C,V>
- java.lang.Object
-
- com.google.common.collect.AbstractTable<R,C,V>
-
- All Implemented Interfaces:
Table<R,C,V>
- Direct Known Subclasses:
ArrayTable
,ImmutableTable
,StandardTable
,Tables.TransformedTable
,Tables.TransposeTable
@GwtCompatible abstract class AbstractTable<R,C,V> extends java.lang.Object implements Table<R,C,V>
Skeletal, implementation-agnostic implementation of theTable
interface.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) class
AbstractTable.CellSet
(package private) class
AbstractTable.Values
-
Nested classes/interfaces inherited from interface com.google.common.collect.Table
Table.Cell<R,C,V>
-
-
Constructor Summary
Constructors Constructor Description AbstractTable()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description (package private) abstract java.util.Iterator<Table.Cell<R,C,V>>
cellIterator()
java.util.Set<Table.Cell<R,C,V>>
cellSet()
Returns a set of all row key / column key / value triplets.(package private) abstract java.util.Spliterator<Table.Cell<R,C,V>>
cellSpliterator()
void
clear()
Removes all mappings from the table.java.util.Set<C>
columnKeySet()
Returns a set of column keys that have one or more values in the table.boolean
contains(java.lang.Object rowKey, java.lang.Object columnKey)
Returnstrue
if the table contains a mapping with the specified row and column keys.boolean
containsColumn(java.lang.Object columnKey)
Returnstrue
if the table contains a mapping with the specified column.boolean
containsRow(java.lang.Object rowKey)
Returnstrue
if the table contains a mapping with the specified row key.boolean
containsValue(java.lang.Object value)
Returnstrue
if the table contains a mapping with the specified value.(package private) java.util.Set<Table.Cell<R,C,V>>
createCellSet()
(package private) java.util.Collection<V>
createValues()
boolean
equals(java.lang.Object obj)
Compares the specified object with this table for equality.V
get(java.lang.Object rowKey, java.lang.Object columnKey)
Returns the value corresponding to the given row and column keys, ornull
if no such mapping exists.int
hashCode()
Returns the hash code for this table.boolean
isEmpty()
Returnstrue
if the table contains no mappings.V
put(R rowKey, C columnKey, V value)
Associates the specified value with the specified keys.void
putAll(Table<? extends R,? extends C,? extends V> table)
Copies all mappings from the specified table to this table.V
remove(java.lang.Object rowKey, java.lang.Object columnKey)
Removes the mapping, if any, associated with the given keys.java.util.Set<R>
rowKeySet()
Returns a set of row keys that have one or more values in the table.java.lang.String
toString()
Returns the string representationrowMap().toString()
.java.util.Collection<V>
values()
Returns a collection of all values, which may contain duplicates.(package private) java.util.Iterator<V>
valuesIterator()
(package private) java.util.Spliterator<V>
valuesSpliterator()
-
-
-
Field Detail
-
cellSet
private transient java.util.Set<Table.Cell<R,C,V>> cellSet
-
values
private transient java.util.Collection<V> values
-
-
Method Detail
-
containsRow
public boolean containsRow(java.lang.Object rowKey)
Description copied from interface:Table
Returnstrue
if the table contains a mapping with the specified row key.- Specified by:
containsRow
in interfaceTable<R,C,V>
- Parameters:
rowKey
- key of row to search for
-
containsColumn
public boolean containsColumn(java.lang.Object columnKey)
Description copied from interface:Table
Returnstrue
if the table contains a mapping with the specified column.- Specified by:
containsColumn
in interfaceTable<R,C,V>
- Parameters:
columnKey
- key of column to search for
-
rowKeySet
public java.util.Set<R> rowKeySet()
Description copied from interface:Table
Returns a set of row keys that have one or more values in the table. Changes to the set will update the underlying table, and vice versa.
-
columnKeySet
public java.util.Set<C> columnKeySet()
Description copied from interface:Table
Returns a set of column keys that have one or more values in the table. Changes to the set will update the underlying table, and vice versa.- Specified by:
columnKeySet
in interfaceTable<R,C,V>
- Returns:
- set of column keys
-
containsValue
public boolean containsValue(java.lang.Object value)
Description copied from interface:Table
Returnstrue
if the table contains a mapping with the specified value.- Specified by:
containsValue
in interfaceTable<R,C,V>
- Parameters:
value
- value to search for
-
contains
public boolean contains(java.lang.Object rowKey, java.lang.Object columnKey)
Description copied from interface:Table
Returnstrue
if the table contains a mapping with the specified row and column keys.
-
get
public V get(java.lang.Object rowKey, java.lang.Object columnKey)
Description copied from interface:Table
Returns the value corresponding to the given row and column keys, ornull
if no such mapping exists.
-
isEmpty
public boolean isEmpty()
Description copied from interface:Table
Returnstrue
if the table contains no mappings.
-
clear
public void clear()
Description copied from interface:Table
Removes all mappings from the table.
-
remove
public V remove(java.lang.Object rowKey, java.lang.Object columnKey)
Description copied from interface:Table
Removes the mapping, if any, associated with the given keys.
-
put
public V put(R rowKey, C columnKey, V value)
Description copied from interface:Table
Associates the specified value with the specified keys. If the table already contained a mapping for those keys, the old value is replaced with the specified value.- Specified by:
put
in interfaceTable<R,C,V>
- Parameters:
rowKey
- row key that the value should be associated withcolumnKey
- column key that the value should be associated withvalue
- value to be associated with the specified keys- Returns:
- the value previously associated with the keys, or
null
if no mapping existed for the keys
-
putAll
public void putAll(Table<? extends R,? extends C,? extends V> table)
Description copied from interface:Table
Copies all mappings from the specified table to this table. The effect is equivalent to callingTable.put(R, C, V)
with each row key / column key / value mapping intable
.
-
cellSet
public java.util.Set<Table.Cell<R,C,V>> cellSet()
Description copied from interface:Table
Returns a set of all row key / column key / value triplets. Changes to the returned set will update the underlying table, and vice versa. The cell set does not support theadd
oraddAll
methods.
-
createCellSet
java.util.Set<Table.Cell<R,C,V>> createCellSet()
-
cellIterator
abstract java.util.Iterator<Table.Cell<R,C,V>> cellIterator()
-
cellSpliterator
abstract java.util.Spliterator<Table.Cell<R,C,V>> cellSpliterator()
-
values
public java.util.Collection<V> values()
Description copied from interface:Table
Returns a collection of all values, which may contain duplicates. Changes to the returned collection will update the underlying table, and vice versa.
-
createValues
java.util.Collection<V> createValues()
-
valuesIterator
java.util.Iterator<V> valuesIterator()
-
valuesSpliterator
java.util.Spliterator<V> valuesSpliterator()
-
equals
public boolean equals(java.lang.Object obj)
Description copied from interface:Table
Compares the specified object with this table for equality. Two tables are equal when their cell views, as returned byTable.cellSet()
, are equal.
-
hashCode
public int hashCode()
Description copied from interface:Table
Returns the hash code for this table. The hash code of a table is defined as the hash code of its cell view, as returned byTable.cellSet()
.
-
toString
public java.lang.String toString()
Returns the string representationrowMap().toString()
.- Overrides:
toString
in classjava.lang.Object
-
-