Package org.jfree.data
Class DefaultKeyedValues2D
- java.lang.Object
-
- org.jfree.data.DefaultKeyedValues2D
-
- All Implemented Interfaces:
java.io.Serializable,java.lang.Cloneable,PublicCloneable,KeyedValues2D,Values2D
public class DefaultKeyedValues2D extends java.lang.Object implements KeyedValues2D, PublicCloneable, 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 ofComparableand (b) immutable.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.ListcolumnKeysThe column keys.private java.util.ListrowKeysThe row keys.private java.util.ListrowsThe row data.private static longserialVersionUIDFor serialization.private booleansortRowKeysIf the row keys should be sorted by their comparable order.
-
Constructor Summary
Constructors Constructor Description DefaultKeyedValues2D()Creates a new instance (initially empty).DefaultKeyedValues2D(boolean sortRowKeys)Creates a new instance (initially empty).
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddValue(java.lang.Number value, java.lang.Comparable rowKey, java.lang.Comparable columnKey)Adds a value to the table.voidclear()Clears all the data and associated keys.java.lang.Objectclone()Returns a clone.booleanequals(java.lang.Object o)Tests if this object is equal to another.intgetColumnCount()Returns the column count.intgetColumnIndex(java.lang.Comparable key)Returns the column index for a given key.java.lang.ComparablegetColumnKey(int column)Returns the key for a given column.java.util.ListgetColumnKeys()Returns the column keys in an unmodifiable list.intgetRowCount()Returns the row count.intgetRowIndex(java.lang.Comparable key)Returns the row index for a given key.java.lang.ComparablegetRowKey(int row)Returns the key for a given row.java.util.ListgetRowKeys()Returns the row keys in an unmodifiable list.java.lang.NumbergetValue(int row, int column)Returns the value for a given row and column.java.lang.NumbergetValue(java.lang.Comparable rowKey, java.lang.Comparable columnKey)Returns the value for the given row and column keys.inthashCode()Returns a hash code.voidremoveColumn(int columnIndex)Removes a column.voidremoveColumn(java.lang.Comparable columnKey)Removes a column from the table.voidremoveRow(int rowIndex)Removes a row.voidremoveRow(java.lang.Comparable rowKey)Removes a row from the table.voidremoveValue(java.lang.Comparable rowKey, java.lang.Comparable columnKey)Removes a value from the table by setting it tonull.voidsetValue(java.lang.Number value, java.lang.Comparable rowKey, java.lang.Comparable columnKey)Adds or updates a value.
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
For serialization.- See Also:
- Constant Field Values
-
rowKeys
private java.util.List rowKeys
The row keys.
-
columnKeys
private java.util.List columnKeys
The column keys.
-
rows
private java.util.List rows
The row data.
-
sortRowKeys
private final boolean sortRowKeys
If the row keys should be sorted by their comparable order.
-
-
Method Detail
-
getRowCount
public int getRowCount()
Returns the row count.- Specified by:
getRowCountin interfaceValues2D- Returns:
- The row count.
- See Also:
getColumnCount()
-
getColumnCount
public int getColumnCount()
Returns the column count.- Specified by:
getColumnCountin interfaceValues2D- Returns:
- The column count.
- See Also:
getRowCount()
-
getValue
public java.lang.Number getValue(int row, int column)Returns the value for a given row and column.- Specified by:
getValuein interfaceValues2D- Parameters:
row- the row index.column- the column index.- Returns:
- The value.
- See Also:
getValue(Comparable, Comparable)
-
getRowKey
public java.lang.Comparable getRowKey(int row)
Returns the key for a given row.- Specified by:
getRowKeyin interfaceKeyedValues2D- Parameters:
row- the row index (in the range 0 togetRowCount()- 1).- Returns:
- The row key.
- See Also:
getRowIndex(Comparable),getColumnKey(int)
-
getRowIndex
public int getRowIndex(java.lang.Comparable key)
Returns the row index for a given key.- Specified by:
getRowIndexin interfaceKeyedValues2D- Parameters:
key- the key (nullnot permitted).- Returns:
- The row index.
- See Also:
getRowKey(int),getColumnIndex(Comparable)
-
getRowKeys
public java.util.List getRowKeys()
Returns the row keys in an unmodifiable list.- Specified by:
getRowKeysin interfaceKeyedValues2D- Returns:
- The row keys.
- See Also:
getColumnKeys()
-
getColumnKey
public java.lang.Comparable getColumnKey(int column)
Returns the key for a given column.- Specified by:
getColumnKeyin interfaceKeyedValues2D- Parameters:
column- the column (in the range 0 togetColumnCount()- 1).- Returns:
- The key.
- See Also:
getColumnIndex(Comparable),getRowKey(int)
-
getColumnIndex
public int getColumnIndex(java.lang.Comparable key)
Returns the column index for a given key.- Specified by:
getColumnIndexin interfaceKeyedValues2D- Parameters:
key- the key (nullnot permitted).- Returns:
- The column index.
- See Also:
getColumnKey(int),getRowIndex(Comparable)
-
getColumnKeys
public java.util.List getColumnKeys()
Returns the column keys in an unmodifiable list.- Specified by:
getColumnKeysin interfaceKeyedValues2D- Returns:
- The column keys.
- See Also:
getRowKeys()
-
getValue
public java.lang.Number getValue(java.lang.Comparable rowKey, java.lang.Comparable columnKey)Returns the value for the given row and column keys. This method will throw anUnknownKeyExceptionif either key is not defined in the data structure.- Specified by:
getValuein interfaceKeyedValues2D- Parameters:
rowKey- the row key (nullnot permitted).columnKey- the column key (nullnot permitted).- Returns:
- The value (possibly
null). - See Also:
addValue(Number, Comparable, Comparable),removeValue(Comparable, Comparable)
-
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 (nullpermitted).rowKey- the row key (nullnot permitted).columnKey- the column key (nullnot permitted).- See Also:
setValue(Number, Comparable, Comparable),removeValue(Comparable, Comparable)
-
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 (nullpermitted).rowKey- the row key (nullnot permitted).columnKey- the column key (nullnot permitted).- See Also:
addValue(Number, Comparable, Comparable),removeValue(Comparable, Comparable)
-
removeValue
public void removeValue(java.lang.Comparable rowKey, java.lang.Comparable columnKey)Removes a value from the table by setting it tonull. If all the values in the specified row and/or column are nownull, the row and/or column is removed from the table.- Parameters:
rowKey- the row key (nullnot permitted).columnKey- the column key (nullnot permitted).- See Also:
addValue(Number, Comparable, Comparable)
-
removeRow
public void removeRow(int rowIndex)
Removes a row.- Parameters:
rowIndex- the row index.- See Also:
removeRow(Comparable),removeColumn(int)
-
removeRow
public void removeRow(java.lang.Comparable rowKey)
Removes a row from the table.- Parameters:
rowKey- the row key (nullnot permitted).- Throws:
UnknownKeyException- ifrowKeyis not defined in the table.- See Also:
removeRow(int),removeColumn(Comparable)
-
removeColumn
public void removeColumn(int columnIndex)
Removes a column.- Parameters:
columnIndex- the column index.- See Also:
removeColumn(Comparable),removeRow(int)
-
removeColumn
public void removeColumn(java.lang.Comparable columnKey)
Removes a column from the table.- Parameters:
columnKey- the column key (nullnot permitted).- Throws:
UnknownKeyException- if the table does not contain a column with the specified key.java.lang.IllegalArgumentException- ifcolumnKeyisnull.- See Also:
removeColumn(int),removeRow(Comparable)
-
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.- Overrides:
equalsin classjava.lang.Object- Parameters:
o- the other object (nullpermitted).- Returns:
- A boolean.
-
hashCode
public int hashCode()
Returns a hash code.- Overrides:
hashCodein classjava.lang.Object- Returns:
- A hash code.
-
clone
public java.lang.Object clone() throws java.lang.CloneNotSupportedExceptionReturns a clone.- Specified by:
clonein interfacePublicCloneable- Overrides:
clonein classjava.lang.Object- Returns:
- A clone.
- Throws:
java.lang.CloneNotSupportedException- this class will not throw this exception, but subclasses (if any) might.
-
-