org.jfree.data
Class DefaultKeyedValues2D

java.lang.Object
  extended byorg.jfree.data.DefaultKeyedValues2D
All Implemented Interfaces:
java.lang.Cloneable, KeyedValues2D, java.io.Serializable, Values2D

public class DefaultKeyedValues2D
extends java.lang.Object
implements KeyedValues2D, java.lang.Cloneable, java.io.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.

See Also:
Serialized Form

Constructor Summary
DefaultKeyedValues2D()
          Creates a new instance (initially empty).
DefaultKeyedValues2D(boolean sortRowKeys)
          Creates a new instance (initially empty).
 
Method Summary
 void addValue(java.lang.Number value, java.lang.Comparable rowKey, java.lang.Comparable columnKey)
          Adds a value to the table.
 void clear()
          Clears all the data and associated keys.
 java.lang.Object clone()
          Returns a clone.
 boolean equals(java.lang.Object o)
          Tests if this object is equal to another.
 int getColumnCount()
          Returns the column count.
 int getColumnIndex(java.lang.Comparable key)
          Returns the column index for a given key.
 java.lang.Comparable getColumnKey(int column)
          Returns the key for a given column.
 java.util.List getColumnKeys()
          Returns the column keys.
 int getRowCount()
          Returns the row count.
 int getRowIndex(java.lang.Comparable key)
          Returns the row index for a given key.
 java.lang.Comparable getRowKey(int row)
          Returns the key for a given row.
 java.util.List getRowKeys()
          Returns the row keys.
 java.lang.Number getValue(java.lang.Comparable rowKey, java.lang.Comparable columnKey)
          Returns the value for the given row and column keys.
 java.lang.Number getValue(int row, int column)
          Returns the value for a given row and column.
 int hashCode()
          Returns a hash code.
 void removeColumn(java.lang.Comparable columnKey)
          Removes a column.
 void removeColumn(int columnIndex)
          Removes a column.
 void removeRow(java.lang.Comparable rowKey)
          Removes a row.
 void removeRow(int rowIndex)
          Removes a row.
 void removeValue(java.lang.Comparable rowKey, java.lang.Comparable columnKey)
          Removes a value.
 void setValue(java.lang.Number value, java.lang.Comparable rowKey, java.lang.Comparable columnKey)
          Adds or updates a value.
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

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 Detail

getRowCount

public int getRowCount()
Returns the row count.

Specified by:
getRowCount in interface Values2D
Returns:
The row count.

getColumnCount

public int getColumnCount()
Returns the column count.

Specified by:
getColumnCount in interface Values2D
Returns:
The column count.

getValue

public java.lang.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.

getRowKey

public java.lang.Comparable getRowKey(int row)
Returns the key for a given row.

Specified by:
getRowKey in interface KeyedValues2D
Parameters:
row - the row index (zero based).
Returns:
The row index.

getRowIndex

public int getRowIndex(java.lang.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.

getRowKeys

public java.util.List getRowKeys()
Returns the row keys.

Specified by:
getRowKeys in interface KeyedValues2D
Returns:
The row keys.

getColumnKey

public java.lang.Comparable getColumnKey(int column)
Returns the key for a given column.

Specified by:
getColumnKey in interface KeyedValues2D
Parameters:
column - the column.
Returns:
The key.

getColumnIndex

public int getColumnIndex(java.lang.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.

getColumnKeys

public java.util.List getColumnKeys()
Returns the column keys.

Specified by:
getColumnKeys in interface KeyedValues2D
Returns:
The column keys.

getValue

public java.lang.Number getValue(java.lang.Comparable rowKey,
                                 java.lang.Comparable columnKey)
Returns the value for the given row and column keys.

Specified by:
getValue in interface KeyedValues2D
Parameters:
rowKey - the row key (null not permitted).
columnKey - the column key (null not permitted).
Returns:
The value.

addValue

public void addValue(java.lang.Number value,
                     java.lang.Comparable rowKey,
                     java.lang.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).

setValue

public void setValue(java.lang.Number value,
                     java.lang.Comparable rowKey,
                     java.lang.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).

removeValue

public void removeValue(java.lang.Comparable rowKey,
                        java.lang.Comparable columnKey)
Removes a value.

Parameters:
rowKey - the row key (null not permitted).
columnKey - the column key (null not permitted).

removeRow

public void removeRow(int rowIndex)
Removes a row.

Parameters:
rowIndex - the row index.

removeRow

public void removeRow(java.lang.Comparable rowKey)
Removes a row.

Parameters:
rowKey - the row key.

removeColumn

public void removeColumn(int columnIndex)
Removes a column.

Parameters:
columnIndex - the column index.

removeColumn

public void removeColumn(java.lang.Comparable columnKey)
Removes a column.

Parameters:
columnKey - the column key (null not permitted).

clear

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


equals

public boolean equals(java.lang.Object o)
Tests if this object is equal to another.

Parameters:
o - the other object (null permitted).
Returns:
A boolean.

hashCode

public int hashCode()
Returns a hash code.

Returns:
A hash code.

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
Returns a clone.

Returns:
A clone.
Throws:
java.lang.CloneNotSupportedException - this class will not throw this exception, but subclasses (if any) might.