public class DateTimeComponents extends Object implements Serializable, Comparable<DateTimeComponents>
This class is a simple holder with no processing methods.
Instance of this class are guaranteed to be immutable.
AbsoluteDate
,
DateComponents
,
TimeComponents
,
Serialized FormConstructor and Description |
---|
DateTimeComponents(DateComponents dateIn,
TimeComponents timeIn)
Build a new instance from its components.
|
DateTimeComponents(DateTimeComponents reference,
double offset)
Build an instance from a seconds offset with respect to another one.
|
DateTimeComponents(int year,
int month,
int day)
Build an instance from raw level components.
|
DateTimeComponents(int year,
int month,
int day,
int hour,
int minute,
double second)
Build an instance from raw level components.
|
DateTimeComponents(int year,
Month month,
int day)
Build an instance from raw level components.
|
DateTimeComponents(int year,
Month month,
int day,
int hour,
int minute,
double second)
Build an instance from raw level components.
|
Modifier and Type | Method and Description |
---|---|
int |
compareTo(DateTimeComponents other) |
boolean |
equals(Object other) |
DateComponents |
getDate()
Get the date component.
|
TimeComponents |
getTime()
Get the time component.
|
int |
hashCode() |
double |
offsetFrom(DateTimeComponents dateTime)
Compute the seconds offset between two instances.
|
static DateTimeComponents |
parseDateTime(String string)
Parse a string in ISO-8601 format to build a date/time.
|
String |
toString()
Return a string representation of this pair.
|
protected String |
toString(int precision,
boolean isTimeNearLeapSecond)
Return a string representation of this pair.
|
public DateTimeComponents(DateComponents dateIn, TimeComponents timeIn)
dateIn
- date componenttimeIn
- time componentpublic DateTimeComponents(int year, int month, int day, int hour, int minute, double second)
year
- year number (may be 0 or negative for BC years)month
- month number from 1 to 12day
- day number from 1 to 31hour
- hour number from 0 to 23minute
- minute number from 0 to 59second
- second number from 0.0 to 60.0 (excluded)IllegalArgumentException
- if inconsistent arguments
are given (parameters out of range, february 29 for non-leap years,
dates during the gregorian leap in 1582 ...)public DateTimeComponents(int year, Month month, int day, int hour, int minute, double second)
year
- year number (may be 0 or negative for BC years)month
- month enumerateday
- day number from 1 to 31hour
- hour number from 0 to 23minute
- minute number from 0 to 59second
- second number from 0.0 to 60.0 (excluded)IllegalArgumentException
- if inconsistent arguments
are given (parameters out of range, february 29 for non-leap years,
dates during the gregorian leap in 1582 ...)public DateTimeComponents(int year, int month, int day)
The hour is set to 00:00:00.000.
year
- year number (may be 0 or negative for BC years)month
- month number from 1 to 12day
- day number from 1 to 31IllegalArgumentException
- if inconsistent arguments
are given (parameters out of range, february 29 for non-leap years,
dates during the gregorian leap in 1582 ...)public DateTimeComponents(int year, Month month, int day)
The hour is set to 00:00:00.000.
year
- year number (may be 0 or negative for BC years)month
- month enumerateday
- day number from 1 to 31IllegalArgumentException
- if inconsistent arguments
are given (parameters out of range, february 29 for non-leap years,
dates during the gregorian leap in 1582 ...)public DateTimeComponents(DateTimeComponents reference, double offset)
reference
- reference date/timeoffset
- offset from the reference in secondsoffsetFrom(DateTimeComponents)
public static DateTimeComponents parseDateTime(String string)
The supported formats are all date formats supported by DateComponents.parseDate(String)
and all time
formats supported by TimeComponents.parseTime(String)
separated by the standard time separator 'T', or
date components only (in which case a 00:00:00 hour is implied). Typical examples are 2000-01-01T12:00:00Z or
1976W186T210000.
string
- string to parseIllegalArgumentException
- if string cannot be parsedpublic double offsetFrom(DateTimeComponents dateTime)
dateTime
- dateTime to subtract from the instanceDateTimeComponents(DateTimeComponents, double)
public DateComponents getDate()
public TimeComponents getTime()
public int compareTo(DateTimeComponents other)
compareTo
in interface Comparable<DateTimeComponents>
public String toString()
The format used is ISO8601.
protected String toString(int precision, boolean isTimeNearLeapSecond)
The format used is ISO8601.
precision
- digit number of the seconds fractional partisTimeNearLeapSecond
- true if the date is inside or immediately before
a leap second. It is used to set the upper boundary of the current day:
23:59:60.99.. when true, 23:59:59.99.. when false.Copyright © 2023 CNES. All rights reserved.