org.jfree.data

Class DefaultKeyedValues2D

Implemented Interfaces:
Cloneable, KeyedValues2D, PublicCloneable, Serializable, Values2D

public class DefaultKeyedValues2D
extends java.lang.Object
implements KeyedValues2D, PublicCloneable, Cloneable, Serializable

A data structure that stores zero, one or many values, where each value is associated with two keys (a 'row' key and a 'column' key). The keys should be (a) instances of Comparable and (b) immutable.

Constructor Summary

DefaultKeyedValues2D()
Creates a new instance (initially empty).
DefaultKeyedValues2D(boolean sortRowKeys)
Creates a new instance (initially empty).

Method Summary

void
addValue(Number value, Comparable rowKey, Comparable columnKey)
Adds a value to the table.
void
clear()
Clears all the data and associated keys.
Object
clone()
Returns a clone.
boolean
equals(Object o)
Tests if this object is equal to another.
int
getColumnCount()
Returns the column count.
int
getColumnIndex(Comparable key)
Returns the column index for a given key.
Comparable
getColumnKey(int column)
Returns the key for a given column.
List
getColumnKeys()
Returns the column keys in an unmodifiable list.
int
getRowCount()
Returns the row count.
int
getRowIndex(Comparable key)
Returns the row index for a given key.
Comparable
getRowKey(int row)
Returns the key for a given row.
List
getRowKeys()
Returns the row keys in an unmodifiable list.
Number
getValue(Comparable rowKey, Comparable columnKey)
Returns the value for the given row and column keys.
Number
getValue(int row, int column)
Returns the value for a given row and column.
int
hashCode()
Returns a hash code.
void
removeColumn(Comparable columnKey)
Removes a column.
void
removeColumn(int columnIndex)
Removes a column.
void
removeRow(Comparable rowKey)
Removes a row.
void
removeRow(int rowIndex)
Removes a row.
void
removeValue(Comparable rowKey, Comparable columnKey)
Removes a value.
void
setValue(Number value, Comparable rowKey, Comparable columnKey)
Adds or updates a value.

Constructor Details

DefaultKeyedValues2D

public DefaultKeyedValues2D()
Creates a new instance (initially empty).

DefaultKeyedValues2D

public DefaultKeyedValues2D(boolean sortRowKeys)
Creates a new instance (initially empty).
Parameters:
sortRowKeys - if the row keys should be sorted.

Method Details

addValue

public void addValue(Number value,
                     Comparable rowKey,
                     Comparable columnKey)
Adds a value to the table. Performs the same function as #setValue(Number, Comparable, Comparable).
Parameters:
value - the value (null permitted).
rowKey - the row key (null not permitted).
columnKey - the column key (null not permitted).

clear

public void clear()
Clears all the data and associated keys.

clone

public Object clone()
            throws CloneNotSupportedException
Returns a clone.
Returns:
A clone.

equals

public boolean equals(Object o)
Tests if this object is equal to another.
Parameters:
o - the other object (null permitted).
Returns:
A boolean.

getColumnCount

public int getColumnCount()
Returns the column count.
Specified by:
getColumnCount in interface Values2D
Returns:
The column count.
See Also:
getRowCount()

getColumnIndex

public int getColumnIndex(Comparable key)
Returns the column index for a given key.
Specified by:
getColumnIndex in interface KeyedValues2D
Parameters:
key - the key (null not permitted).
Returns:
The column index.

getColumnKey

public Comparable getColumnKey(int column)
Returns the key for a given column.
Specified by:
getColumnKey in interface KeyedValues2D
Parameters:
column - the column (in the range 0 to getColumnCount() - 1).
Returns:
The key.

getColumnKeys

public List getColumnKeys()
Returns the column keys in an unmodifiable list.
Specified by:
getColumnKeys in interface KeyedValues2D
Returns:
The column keys.
See Also:
getRowKeys()

getRowCount

public int getRowCount()
Returns the row count.
Specified by:
getRowCount in interface Values2D
Returns:
The row count.

getRowIndex

public int getRowIndex(Comparable key)
Returns the row index for a given key.
Specified by:
getRowIndex in interface KeyedValues2D
Parameters:
key - the key (null not permitted).
Returns:
The row index.

getRowKey

public Comparable getRowKey(int row)
Returns the key for a given row.
Specified by:
getRowKey in interface KeyedValues2D
Parameters:
row - the row index (in the range 0 to getRowCount() - 1).
Returns:
The row key.

getRowKeys

public List getRowKeys()
Returns the row keys in an unmodifiable list.
Specified by:
getRowKeys in interface KeyedValues2D
Returns:
The row keys.

getValue

public Number getValue(Comparable rowKey,
                       Comparable columnKey)
Returns the value for the given row and column keys. This method will throw an UnknownKeyException if either key is not defined in the data structure.
Specified by:
getValue in interface KeyedValues2D
Parameters:
rowKey - the row key (null not permitted).
columnKey - the column key (null not permitted).
Returns:
The value (possibly null).

getValue

public Number getValue(int row,
                       int column)
Returns the value for a given row and column.
Specified by:
getValue in interface Values2D
Parameters:
row - the row index.
column - the column index.
Returns:
The value.

hashCode

public int hashCode()
Returns a hash code.
Returns:
A hash code.

removeColumn

public void removeColumn(Comparable columnKey)
Removes a column.
Parameters:
columnKey - the column key (null not permitted).

removeColumn

public void removeColumn(int columnIndex)
Removes a column.
Parameters:
columnIndex - the column index.

removeRow

public void removeRow(Comparable rowKey)
Removes a row.
Parameters:
rowKey - the row key (null not permitted).

removeRow

public void removeRow(int rowIndex)
Removes a row.
Parameters:
rowIndex - the row index.

removeValue

public void removeValue(Comparable rowKey,
                        Comparable columnKey)
Removes a value.
Parameters:
rowKey - the row key (null not permitted).
columnKey - the column key (null not permitted).

setValue

public void setValue(Number value,
                     Comparable rowKey,
                     Comparable columnKey)
Adds or updates a value.
Parameters:
value - the value (null permitted).
rowKey - the row key (null not permitted).
columnKey - the column key (null not permitted).