## org.jfree.data.time
Class TimeSeriesDataItem

    java.lang.Object
      org.jfree.data.time.TimeSeriesDataItem

All Implemented Interfaces:
  java.lang.Cloneable, java.lang.Comparable, java.io.Serializable

public class TimeSeriesDataItem
extends java.lang.Object
implements java.lang.Cloneable, java.lang.Comparable, java.io.Serializable

Represents one data item in a time series.

The time period can be any of the following:

- `Year`
- `Quarter`
- `Month`
- `Week`
- `Day`
- `Hour`
- `Minute`
- `Second`
- `Millisecond`
- `FixedMillisecond`

The time period is an immutable property of the data item. Data items will often be sorted within a list, and allowing the time period to be changed could destroy the sort order.

Implements the `Comparable` interface so that standard Java sorting can be used to keep the data items in order.

See Also:
  Serialized Form

Constructor Summary
`TimeSeriesDataItem(RegularTimePeriod period, double value)` Constructs a new data item that associates a value with a time period.
`TimeSeriesDataItem(RegularTimePeriod period, java.lang.Number value)` Constructs a new data item that associates a value with a time period.

Method Summary
`java.lang.Object` `clone()` Clones the data item.
`int` `compareTo(java.lang.Object o1)` Returns an integer indicating the order of this data pair object relative to another object.
`boolean` `equals(java.lang.Object o)` Tests this object for equality with an arbitrary object.
`RegularTimePeriod` `getPeriod()` Returns the time period.
`java.lang.Number` `getValue()` Returns the value.
`int` `hashCode()` Returns a hash code.
`void` `setValue(java.lang.Number value)` Sets the value for this data item.

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

Constructor Detail

### TimeSeriesDataItem

    public TimeSeriesDataItem(RegularTimePeriod period,
                              java.lang.Number value)

  Constructs a new data item that associates a value with a time period.

Parameters:
  `period` - the time period (`null` not permitted).
  `value` - the value (`null` permitted).

### TimeSeriesDataItem

    public TimeSeriesDataItem(RegularTimePeriod period,
                              double value)

  Constructs a new data item that associates a value with a time period.

Parameters:
  `period` - the time period (`null` not permitted).
  `value` - the value associated with the time period.

Method Detail

### getPeriod

    public RegularTimePeriod getPeriod()

  Returns the time period.

  Returns:
    The time period (never `null`).

### getValue

    public java.lang.Number getValue()

  Returns the value.

  Returns:
    The value (`null` possible).

### setValue

    public void setValue(java.lang.Number value)

  Sets the value for this data item.

  Parameters:
    `value` - the value (`null` permitted).

### equals

    public boolean equals(java.lang.Object o)

  Tests this object for equality with an arbitrary object.

  Parameters:
    `o` - the other object.
  Returns:
    A boolean.

### hashCode

    public int hashCode()

  Returns a hash code.

  Returns:
    A hash code.

### compareTo

    public int compareTo(java.lang.Object o1)

  Returns an integer indicating the order of this data pair object relative to another object.

  For the order we consider only the timing: negative == before, zero == same, positive == after.

  Specified by:
    `compareTo` in interface `java.lang.Comparable`
  Parameters:
    `o1` - The object being compared to.
  Returns:
    An integer indicating the order of the data pair object relative to another object.

### clone

    public java.lang.Object clone()

  Clones the data item.

  Notes: --> no need to clone the period or value since they are immutable classes.

  Returns:
    A clone of the data item.