## org.jfree.data
Class KeyedObjects

    java.lang.Object
      org.jfree.data.KeyedObjects

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable, org.jfree.util.PublicCloneable

    public class KeyedObjects

extends java.lang.Object
implements java.lang.Cloneable, org.jfree.util.PublicCloneable, java.io.Serializable

A collection of (key, object) pairs.

See Also:
  Serialized Form

Constructor Summary
`KeyedObjects()` Creates a new collection (initially empty).

Method Summary
`void` `addObject(java.lang.Comparable key, java.lang.Object object)` Adds a new object to the collection, or overwrites an existing object.
`void` `clear()` Clears all values from the collection.
`java.lang.Object` `clone()` Returns a clone of this object.
`boolean` `equals(java.lang.Object obj)` Tests this object for equality with an arbitrary object.
`int` `getIndex(java.lang.Comparable key)` Returns the index for a given key, or `-1`.
`int` `getItemCount()` Returns the number of items (values) in the collection.
`java.lang.Comparable` `getKey(int index)` Returns the key at the specified position in the list.
`java.util.List` `getKeys()` Returns a list containing all the keys in the list.
`java.lang.Object` `getObject(java.lang.Comparable key)` Returns the object for a given key.
`java.lang.Object` `getObject(int item)` Returns an object from the list.
`int` `hashCode()` Returns a hash code.
`void` `insertValue(int position, java.lang.Comparable key, java.lang.Object value)` Inserts a new value at the specified position in the dataset or, if there is an existing item with the specified key, updates the value for that item and moves it to the specified position.
`void` `removeValue(java.lang.Comparable key)` Removes a value from the collection.
`void` `removeValue(int index)` Removes a value from the collection.
`void` `setObject(java.lang.Comparable key, java.lang.Object object)` Replaces an existing object, or adds a new object to the collection.

Methods inherited from class java.lang.Object
`finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### KeyedObjects

    public KeyedObjects()

  Creates a new collection (initially empty).

Method Detail

### getItemCount

    public int getItemCount()

  Returns the number of items (values) in the collection.

  Returns:
    The item count.

### getObject

    public java.lang.Object getObject(int item)

  Returns an object from the list.

  Parameters:
    `item` - the item index (zero-based).
  Returns:
    The object (possibly `null`).
  Throws:
    `java.lang.IndexOutOfBoundsException` - if `item` is out of bounds.

### getKey

    public java.lang.Comparable getKey(int index)

  Returns the key at the specified position in the list.

  Parameters:
    `index` - the item index (zero-based).
  Returns:
    The row key.
  Throws:
    `java.lang.IndexOutOfBoundsException` - if `item` is out of bounds.
  See Also:
    `getIndex(Comparable)`

### getIndex

    public int getIndex(java.lang.Comparable key)

  Returns the index for a given key, or `-1`.

  Parameters:
    `key` - the key (`null` not permitted).
  Returns:
    The index, or `-1` if the key is unrecognised.
  See Also:
    `getKey(int)`

### getKeys

    public java.util.List getKeys()

  Returns a list containing all the keys in the list.

  Returns:
    The keys (never `null`).

### getObject

    public java.lang.Object getObject(java.lang.Comparable key)

  Returns the object for a given key. If the key is not recognised, the method should return `null`.

  Parameters:
    `key` - the key.
  Returns:
    The object (possibly `null`).
  See Also:
    `addObject(Comparable, Object)`

### addObject

    public void addObject(java.lang.Comparable key,
                          java.lang.Object object)

  Adds a new object to the collection, or overwrites an existing object. This is the same as the `setObject(Comparable, Object)` method.

  Parameters:
    `key` - the key.
    `object` - the object.
  See Also:
    `getObject(Comparable)`

### setObject

    public void setObject(java.lang.Comparable key,
                          java.lang.Object object)

  Replaces an existing object, or adds a new object to the collection. This is the same as the `addObject(Comparable, Object)` method.

  Parameters:
    `key` - the key (`null` not permitted).
    `object` - the object.
  See Also:
    `getObject(Comparable)`

### insertValue

    public void insertValue(int position,
                            java.lang.Comparable key,
                            java.lang.Object value)

  Inserts a new value at the specified position in the dataset or, if there is an existing item with the specified key, updates the value for that item and moves it to the specified position.

  Parameters:
    `position` - the position (in the range `0` to `getItemCount()`).
    `key` - the key (`null` not permitted).
    `value` - the value (`null` permitted).
  Since:
    1.0.7

### removeValue

    public void removeValue(int index)

  Removes a value from the collection.

  Parameters:
    `index` - the index of the item to remove.
  See Also:
    `removeValue(Comparable)`

### removeValue

    public void removeValue(java.lang.Comparable key)

  Removes a value from the collection.

  Parameters:
    `key` - the key (`null` not permitted).
  Throws:
    `UnknownKeyException` - if the key is not recognised.
  See Also:
    `removeValue(int)`

### clear

    public void clear()

  Clears all values from the collection.

  Since:
    1.0.7

### clone

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

  Returns a clone of this object. Keys in the list should be immutable and are not cloned. Objects in the list are cloned only if they implement `PublicCloneable`.

  Specified by:
    `clone` in interface `org.jfree.util.PublicCloneable`
  Overrides:
    `clone` in class `java.lang.Object`
  Returns:
    A clone.
  Throws:
    `java.lang.CloneNotSupportedException` - if there is a problem cloning.

### equals

    public boolean equals(java.lang.Object obj)

  Tests this object for equality with an arbitrary object.

  Overrides:
    `equals` in class `java.lang.Object`
  Parameters:
    `obj` - the object (`null` permitted).
  Returns:
    A boolean.

### hashCode

    public int hashCode()

  Returns a hash code.

  Overrides:
    `hashCode` in class `java.lang.Object`
  Returns:
    A hash code.