java.lang.Object | ||
↳ | org.joda.time.field.AbstractReadableInstantFieldProperty | |
↳ | org.joda.time.DateTime.Property |
DateTime.Property binds a DateTime to a DateTimeField allowing powerful datetime functionality to be easily accessed.
The simplest use of this class is as an alternative get method, here used to get the year '1972' (as an int) and the month 'December' (as a String).
DateTime dt = new DateTime(1972, 12, 3, 0, 0, 0, 0); int year = dt.year().get(); String monthStr = dt.month().getAsText();
Methods are also provided that allow date modification. These return new instances of DateTime - they do not modify the original. The example below yields two independent immutable date objects 20 years apart.
DateTime dt = new DateTime(1972, 12, 3, 0, 0, 0, 0); DateTime dt20 = dt.year().addToCopy(20);Serious modification of dates (ie. more than just changing one or two fields) should use the
MutableDateTime
class.
DateTime.Propery itself is thread-safe and immutable, as well as the DateTime being operated on.
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Adds to this field in a copy of this DateTime.
| |||||||||||
Adds to this field in a copy of this DateTime.
| |||||||||||
Adds to this field, possibly wrapped, in a copy of this DateTime.
| |||||||||||
Gets the datetime being used.
| |||||||||||
Gets the field being used.
| |||||||||||
Rounds to the highest whole unit of this field on a copy of this DateTime.
| |||||||||||
Rounds to the lowest whole unit of this field on a copy of this DateTime.
| |||||||||||
Rounds to the nearest whole unit of this field on a copy of this DateTime,
favoring the ceiling if halfway.
| |||||||||||
Rounds to the nearest whole unit of this field on a copy of this
DateTime.
| |||||||||||
Rounds to the nearest whole unit of this field on a copy of this DateTime,
favoring the floor if halfway.
| |||||||||||
Sets this field in a copy of the DateTime to a parsed text value.
| |||||||||||
Sets this field in a copy of the DateTime.
| |||||||||||
Sets this field in a copy of the DateTime to a parsed text value.
| |||||||||||
Returns a new DateTime with this field set to the maximum value
for this field.
| |||||||||||
Returns a new DateTime with this field set to the minimum value
for this field.
|
Protected Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Gets the chronology of the datetime that this property is linked to.
| |||||||||||
Gets the milliseconds of the datetime that this property is linked to.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
org.joda.time.field.AbstractReadableInstantFieldProperty
| |||||||||||
From class
java.lang.Object
|
Adds to this field in a copy of this DateTime.
The DateTime attached to this property is unchanged by this call. This operation is faster than converting a DateTime to a MutableDateTime and back again when setting one field. When setting multiple fields, it is generally quicker to make the conversion to MutableDateTime.
value | the value to add to the field in the copy |
---|
IllegalArgumentException | if the value isn't valid |
---|
Adds to this field in a copy of this DateTime.
The DateTime attached to this property is unchanged by this call. This operation is faster than converting a DateTime to a MutableDateTime and back again when setting one field. When setting multiple fields, it is generally quicker to make the conversion to MutableDateTime.
value | the value to add to the field in the copy |
---|
IllegalArgumentException | if the value isn't valid |
---|
Adds to this field, possibly wrapped, in a copy of this DateTime. A wrapped operation only changes this field. Thus 31st January addWrapField one day goes to the 1st January.
The DateTime attached to this property is unchanged by this call. This operation is faster than converting a DateTime to a MutableDateTime and back again when setting one field. When setting multiple fields, it is generally quicker to make the conversion to MutableDateTime.
value | the value to add to the field in the copy |
---|
IllegalArgumentException | if the value isn't valid |
---|
Rounds to the highest whole unit of this field on a copy of this DateTime.
Rounds to the lowest whole unit of this field on a copy of this DateTime.
Rounds to the nearest whole unit of this field on a copy of this DateTime, favoring the ceiling if halfway.
Rounds to the nearest whole unit of this field on a copy of this DateTime. If halfway, the ceiling is favored over the floor only if it makes this field's value even.
Rounds to the nearest whole unit of this field on a copy of this DateTime, favoring the floor if halfway.
Sets this field in a copy of the DateTime to a parsed text value.
The DateTime attached to this property is unchanged by this call. This operation is faster than converting a DateTime to a MutableDateTime and back again when setting one field. When setting multiple fields, it is generally quicker to make the conversion to MutableDateTime.
text | the text value to set |
---|---|
locale | optional locale to use for selecting a text symbol |
IllegalArgumentException | if the text value isn't valid |
---|
Sets this field in a copy of the DateTime.
The DateTime attached to this property is unchanged by this call. This operation is faster than converting a DateTime to a MutableDateTime and back again when setting one field. When setting multiple fields, it is generally quicker to make the conversion to MutableDateTime.
value | the value to set the field in the copy to |
---|
IllegalArgumentException | if the value isn't valid |
---|
Sets this field in a copy of the DateTime to a parsed text value.
The DateTime attached to this property is unchanged by this call. This operation is faster than converting a DateTime to a MutableDateTime and back again when setting one field. When setting multiple fields, it is generally quicker to make the conversion to MutableDateTime.
text | the text value to set |
---|
IllegalArgumentException | if the text value isn't valid |
---|
Returns a new DateTime with this field set to the maximum value for this field.
This operation is useful for obtaining a DateTime on the last day of the month, as month lengths vary.
DateTime lastDayOfMonth = dt.dayOfMonth().withMaximumValue();
The DateTime attached to this property is unchanged by this call.
Returns a new DateTime with this field set to the minimum value for this field.
The DateTime attached to this property is unchanged by this call.
Gets the chronology of the datetime that this property is linked to.
Gets the milliseconds of the datetime that this property is linked to.