- すべての実装されたインタフェース:
Serializable
,Comparable<LocalTime>
,Temporal
,TemporalAccessor
,TemporalAdjuster
public final class LocalTime extends Object implements Temporal, TemporalAdjuster, Comparable<LocalTime>, Serializable
10:15:30
など)。
LocalTime
は、時間(時-分-秒として表示されることが多い)を表す不変の日付/時間オブジェクトです。 時間は、ナノ秒の精度まで表されます。 たとえば、「13:45.30.123456789」という値をLocalTime
に格納できます。
このクラスでは、時間またはタイムゾーンを格納したり表現したりしません。 むしろこれは、壁掛け時計に見られるようなローカル時間に関する記述です。 オフセットやタイムゾーンなどの追加情報がなければ、時系列上にインスタントを表現することはできません。
ISO-8601暦体系は、世界中の大部分で現在使われている近代の常用暦体系です。 このAPIは、時刻に対して、すべての暦体系が同じ表現(このクラス)を使用することを想定しています。
これは値ベースのクラスです。LocalTime
のインスタンスに対して、アイデンティティの影響を受けやすい操作(参照型等価演算子(==
)、アイデンティティ・ハッシュ・コード、同期化など)を使用すると、予測できない結果が生じることがあるため、使わないようにしてください。 比較する場合は、equals
メソッドを使用することをお薦めします。
- 実装要件:
- このクラスは不変でスレッドセーフです。
- 導入されたバージョン:
- 1.8
- 関連項目:
- 直列化された形式
-
フィールドのサマリー
-
メソッドのサマリー
修飾子と型 メソッド 説明 Temporal
adjustInto(Temporal temporal)
指定された時間的オブジェクトを、このオブジェクトと同じ時間を持つように調整します。LocalDateTime
atDate(LocalDate date)
この時間を日付と組み合せてLocalDateTime
を作成します。OffsetTime
atOffset(ZoneOffset offset)
この時間をオフセットと組み合せてOffsetTime
を作成します。int
compareTo(LocalTime other)
この時間を別の時間と比較します。boolean
equals(Object obj)
この時間がもう一方の時間と等しいかどうかを確認します。String
format(DateTimeFormatter formatter)
指定されたフォーマッタを使用してこの時間を書式設定します。static LocalTime
from(TemporalAccessor temporal)
時間的オブジェクトからLocalTime
のインスタンスを取得します。int
get(TemporalField field)
指定されたフィールドの値をこの時間からint
として取得します。int
getHour()
時フィールドを取得します。long
getLong(TemporalField field)
指定されたフィールドの値をこの時間からlong
として取得します。int
getMinute()
分フィールドを取得します。int
getNano()
ナノ秒フィールドを取得します。int
getSecond()
秒フィールドを取得します。int
hashCode()
この時間のハッシュ・コード。boolean
isAfter(LocalTime other)
この時間が、指定された時間より後にあるかどうかをチェックします。boolean
isBefore(LocalTime other)
この時間が、指定された時間より前にあるかどうかをチェックします。boolean
isSupported(TemporalField field)
指定されたフィールドがサポートされているかどうかをチェックします。boolean
isSupported(TemporalUnit unit)
指定された単位がサポートされているかどうかをチェックします。LocalTime
minus(long amountToSubtract, TemporalUnit unit)
指定された量を減算して、この時間のコピーを返します。LocalTime
minus(TemporalAmount amountToSubtract)
指定された量を減算して、この時間のコピーを返します。LocalTime
minusHours(long hoursToSubtract)
指定された時間数を減算して、このLocalTime
のコピーを返します。LocalTime
minusMinutes(long minutesToSubtract)
指定された分数を減算して、このLocalTime
のコピーを返します。LocalTime
minusNanos(long nanosToSubtract)
指定されたナノ秒数を減算して、このLocalTime
のコピーを返します。LocalTime
minusSeconds(long secondsToSubtract)
指定された秒数を減算して、このLocalTime
のコピーを返します。static LocalTime
now()
デフォルトのタイムゾーンのシステム・クロックから現在の時間を取得します。static LocalTime
now(Clock clock)
指定されたクロックから現在の時間を取得します。static LocalTime
now(ZoneId zone)
指定されたタイムゾーンのシステム・クロックから現在の時間を取得します。static LocalTime
of(int hour, int minute)
時と分からLocalTime
のインスタンスを取得します。static LocalTime
of(int hour, int minute, int second)
時、分、および秒からLocalTime
のインスタンスを取得します。static LocalTime
of(int hour, int minute, int second, int nanoOfSecond)
時、分、秒、およびナノ秒からLocalTime
のインスタンスを取得します。static LocalTime
ofInstant(Instant instant, ZoneId zone)
Instant
とゾーンIDからLocalTime
のインスタンスを取得します。static LocalTime
ofNanoOfDay(long nanoOfDay)
「1日のうちのナノ秒」の値からLocalTime
のインスタンスを取得します。static LocalTime
ofSecondOfDay(long secondOfDay)
「1日のうちの秒」の値からLocalTime
のインスタンスを取得します。static LocalTime
parse(CharSequence text)
10:15
などのテキスト文字列からLocalTime
のインスタンスを取得します。static LocalTime
parse(CharSequence text, DateTimeFormatter formatter)
特定のフォーマッタを使用して、テキスト文字列からLocalTime
のインスタンスを取得します。LocalTime
plus(long amountToAdd, TemporalUnit unit)
この時刻のコピーに指定された時間を追加したものを返します。LocalTime
plus(TemporalAmount amountToAdd)
この時刻のコピーに指定された時間を追加したものを返します。LocalTime
plusHours(long hoursToAdd)
指定された時間数を加算して、このLocalTime
のコピーを返します。LocalTime
plusMinutes(long minutesToAdd)
指定された分数を加算して、このLocalTime
のコピーを返します。LocalTime
plusNanos(long nanosToAdd)
指定されたナノ秒数を加算して、このLocalTime
のコピーを返します。LocalTime
plusSeconds(long secondstoAdd)
指定された秒数を加算して、このLocalTime
のコピーを返します。<R> R
query(TemporalQuery<R> query)
指定された問合せを使用してこの時間を問い合せます。ValueRange
range(TemporalField field)
指定されたフィールドの有効な値の範囲を取得します。long
toEpochSecond(LocalDate date, ZoneOffset offset)
このLocalTime
を1970-01-01T00:00:00Zの時代からの秒数に変換します。long
toNanoOfDay()
時間を1日のナノ秒(0
から24 * 60 * 60 * 1,000,000,000 - 1
)として抽出します。int
toSecondOfDay()
時間を1日のうちの秒数(0
から24 * 60 * 60 - 1
)として抽出します。String
toString()
この時間をString
として出力します(10:15
など)。LocalTime
truncatedTo(TemporalUnit unit)
時間が切り捨てられた、このLocalTime
のコピーを返します。long
until(Temporal endExclusive, TemporalUnit unit)
もう一方の時間までの時間量を指定された単位で計算します。LocalTime
with(TemporalAdjuster adjuster)
この時間の調整済のコピーを返します。LocalTime
with(TemporalField field, long newValue)
指定されたフィールドを新しい値に設定して、この時間のコピーを返します。LocalTime
withHour(int hour)
時の値を変更して、このLocalTime
のコピーを返します。LocalTime
withMinute(int minute)
分の値を変更して、このLocalTime
のコピーを返します。LocalTime
withNano(int nanoOfSecond)
ナノ秒の値を変更して、このLocalTime
のコピーを返します。LocalTime
withSecond(int second)
秒の値を変更して、このLocalTime
のコピーを返します。
-
フィールド詳細
-
MIN
public static final LocalTime MINサポートされている最小のLocalTime
である「00:00」。 これは、その日の開始時の深夜零時の時間です。 -
MAX
public static final LocalTime MAXサポートされている最大のLocalTime
である「23:59:59.999999999」。 これは、その日の終わりの深夜零時直前の時間です。 -
MIDNIGHT
public static final LocalTime MIDNIGHTその日の開始時の深夜零時の時間である「00:00」。 -
NOON
public static final LocalTime NOONその日の午後零時の時間である「12:00」。
-
-
メソッドの詳細
-
now
public static LocalTime now()デフォルトのタイムゾーンのシステム・クロックから現在の時間を取得します。これは、デフォルトのタイムゾーンの
システム・クロック
を問い合せて、現在の時間を取得します。このメソッドを使用すると、クロックがハードコードされているため、テストに代替のクロックを使用できないようにします。
- 戻り値:
- システム・クロックとデフォルトのタイムゾーンを使用する現在の時間。null以外
-
now
指定されたタイムゾーンのシステム・クロックから現在の時間を取得します。これは、
システム・クロック
を問い合せて現在の時間を取得します。 タイムゾーンを指定すると、デフォルトのタイムゾーンへの依存を避けられます。このメソッドを使用すると、クロックがハードコードされているため、テストに代替のクロックを使用できないようにします。
- パラメータ:
zone
- 使用するゾーンID、null以外- 戻り値:
- システム・クロックを使用する現在の時間。null以外
-
now
指定されたクロックから現在の時間を取得します。これは、指定されたクロックを照会して現在の時間を取得します。 このメソッドを使用すると、テストに代替のクロックを使用できます。 代替のクロックは
dependency injection
を使用して導入できます。- パラメータ:
clock
- 使用するクロック、null以外- 戻り値:
- 現在の時間。null以外
-
of
public static LocalTime of(int hour, int minute)時と分からLocalTime
のインスタンスを取得します。これは、指定された時と分を使って
LocalTime
を返します。 秒およびナノ秒のフィールドはゼロに設定されます。- パラメータ:
hour
- 表される時(0-23)minute
- 表される分(0-59)- 戻り値:
- ローカル時間。null以外
- 例外:
DateTimeException
- いずれかのフィールドの値が範囲外にある場合
-
of
public static LocalTime of(int hour, int minute, int second)時、分、および秒からLocalTime
のインスタンスを取得します。これは、指定された時、分、および秒を使って
LocalTime
を返します。 ナノ秒フィールドはゼロに設定されます。- パラメータ:
hour
- 表される時(0-23)minute
- 表される分(0-59)second
- 表される秒(0-59)- 戻り値:
- ローカル時間。null以外
- 例外:
DateTimeException
- いずれかのフィールドの値が範囲外にある場合
-
of
public static LocalTime of(int hour, int minute, int second, int nanoOfSecond)時、分、秒、およびナノ秒からLocalTime
のインスタンスを取得します。これは、指定された時、分、秒、およびナノ秒を使って
LocalTime
を返します。- パラメータ:
hour
- 表される時(0-23)minute
- 表される分(0-59)second
- 表される秒(0-59)nanoOfSecond
- 表現する「1秒のうちのナノ秒」、0から999,999,999- 戻り値:
- ローカル時間。null以外
- 例外:
DateTimeException
- いずれかのフィールドの値が範囲外にある場合
-
ofInstant
Instant
とゾーンIDからLocalTime
のインスタンスを取得します。これにより、指定された瞬間に基づいて現地時間が作成されます。 まず、ゾーンIDとインスタントを使用してUTC/グリニッジからのオフセットが取得されます。有効なオフセットはインスタントごとに1つしかないため、これは単純です。 次に、インスタントとオフセットを使用して現地時間を計算します。
- パラメータ:
instant
- 時間の作成元のインスタント。null以外zone
- タイムゾーン。オフセットの場合もある。null以外- 戻り値:
- ローカル時間。null以外
- 導入されたバージョン:
- 9
-
ofSecondOfDay
public static LocalTime ofSecondOfDay(long secondOfDay)「1日のうちの秒」の値からLocalTime
のインスタンスを取得します。これは、指定された「1日のうちの秒」を使って
LocalTime
を返します。 ナノ秒フィールドはゼロに設定されます。- パラメータ:
secondOfDay
- 「1日のうちの秒」(0
-24 * 60 * 60 - 1
)- 戻り値:
- ローカル時間。null以外
- 例外:
DateTimeException
- 「1日のうちの秒」の値が無効である場合
-
ofNanoOfDay
public static LocalTime ofNanoOfDay(long nanoOfDay)「1日のうちのナノ秒」の値からLocalTime
のインスタンスを取得します。これは、指定された「1日のうちのナノ秒」を使って
LocalTime
を返します。- パラメータ:
nanoOfDay
- 1日のうちのナノ秒(0
-24 * 60 * 60 * 1,000,000,000 - 1
)- 戻り値:
- ローカル時間。null以外
- 例外:
DateTimeException
- 「1日のうちのナノ秒」の値が無効である場合
-
from
public static LocalTime from(TemporalAccessor temporal)時間的オブジェクトからLocalTime
のインスタンスを取得します。これは、指定された時間に基づいてローカル時間を取得します。
TemporalAccessor
は任意の日付と時間のセットに関する情報を表し、それがこのファクトリでLocalTime
のインスタンスに変換されます。この変換では、
NANO_OF_DAY
フィールドを抽出することに依存しているTemporalQueries.localTime()
問合せを使用します。このメソッドは関数型インタフェース
TemporalQuery
のシグネチャに一致するため、メソッド参照LocalTime::from
を介して、問合せとして使用できます。- パラメータ:
temporal
- 変換する一時オブジェクト、null以外- 戻り値:
- ローカル時間。null以外
- 例外:
DateTimeException
-LocalTime
に変換できない場合
-
parse
public static LocalTime parse(CharSequence text)10:15
などのテキスト文字列からLocalTime
のインスタンスを取得します。この文字列は有効な時間を表している必要があり、
DateTimeFormatter.ISO_LOCAL_TIME
を使って解析されます。- パラメータ:
text
- 「10:15:30」などの解析対象のテキスト。null以外- 戻り値:
- 解析されたローカル時間。null以外
- 例外:
DateTimeParseException
- テキストが解析できない場合
-
parse
public static LocalTime parse(CharSequence text, DateTimeFormatter formatter)特定のフォーマッタを使用して、テキスト文字列からLocalTime
のインスタンスを取得します。そのテキストがフォーマッタを使って解析され、時間が返されます。
- パラメータ:
text
- 解析するテキスト。null以外formatter
- 使用するフォーマッタ、null以外- 戻り値:
- 解析されたローカル時間。null以外
- 例外:
DateTimeParseException
- テキストが解析できない場合
-
isSupported
public boolean isSupported(TemporalField field)指定されたフィールドがサポートされているかどうかをチェックします。これは、指定されたフィールドをこの時間に問い合せることができるかどうかを確認します。 falseの場合、
range
、get
、およびwith(TemporalField, long)
メソッドの呼び出しは、例外をスローします。フィールドが
ChronoField
の場合、ここに問合せを実装します。 サポートされるフィールドは、次のとおりです。NANO_OF_SECOND
NANO_OF_DAY
MICRO_OF_SECOND
MICRO_OF_DAY
MILLI_OF_SECOND
MILLI_OF_DAY
SECOND_OF_MINUTE
SECOND_OF_DAY
MINUTE_OF_HOUR
MINUTE_OF_DAY
HOUR_OF_AMPM
CLOCK_HOUR_OF_AMPM
HOUR_OF_DAY
CLOCK_HOUR_OF_DAY
AMPM_OF_DAY
ChronoField
インスタンスはfalseを返します。フィールドが
ChronoField
でない場合、このメソッドの結果は、this
を引数として渡してTemporalField.isSupportedBy(TemporalAccessor)
を呼び出すことによって取得します。 フィールドがサポートされているかどうかはフィールドによって決定します。- 定義:
- インタフェース
TemporalAccessor
のisSupported
- パラメータ:
field
- チェックするフィールド、nullはfalseを返す- 戻り値:
- フィールドがこの時間でサポートされている場合はtrue、サポートされていない場合はfalse
-
isSupported
public boolean isSupported(TemporalUnit unit)指定された単位がサポートされているかどうかをチェックします。これは、指定された単位をこの時間に対して加算または減算できるかどうかをチェックします。 falseの場合、
plus(long, TemporalUnit)
およびminus
メソッドの呼び出しは、例外をスローします。単位が
ChronoUnit
の場合、問合せはここで実装されます。 サポートされる単位は次のとおりです。NANOS
MICROS
MILLIS
SECONDS
MINUTES
HOURS
HALF_DAYS
ChronoUnit
インスタンスはfalseを返します。単位が
ChronoUnit
でない場合、このメソッドの結果は、this
を引数として渡してTemporalUnit.isSupportedBy(Temporal)
を呼び出すことによって取得します。 単位がサポートされているかどうかは単位によって決定します。- 定義:
- インタフェース
Temporal
のisSupported
- パラメータ:
unit
- チェックする単位、nullはfalseを返す- 戻り値:
- 単位を加算/減算できる場合はtrue、できない場合はfalse
-
range
public ValueRange range(TemporalField field)指定されたフィールドの有効な値の範囲を取得します。範囲オブジェクトはフィールドの有効な最小値と最大値を表します。 この時間は、返される範囲の精度を高めるために使用されます。 範囲を返せない場合は、フィールドがサポートされていないか他のなんらかの理由で、例外がスローされます。
フィールドが
ChronoField
の場合、ここに問合せを実装します。サポートされるフィールド
は適切な範囲のインスタンスを返します。 他のすべてのChronoField
インスタンスはUnsupportedTemporalTypeException
をスローします。フィールドが
ChronoField
ではない場合、このメソッドの結果は、引数としてthis
を渡してTemporalField.rangeRefinedBy(TemporalAccessor)
を呼び出すことにより取得されます。 範囲を取得できるかどうかはフィールドによって決まります。- 定義:
- インタフェース
TemporalAccessor
のrange
- パラメータ:
field
- 範囲を問い合わせるフィールド、null以外- 戻り値:
- フィールドの有効値の範囲。null以外
- 例外:
DateTimeException
- フィールドの範囲を取得できない場合UnsupportedTemporalTypeException
- フィールドがサポートされていない場合
-
get
public int get(TemporalField field)指定されたフィールドの値をこの時間からint
として取得します。これは、指定されたフィールドの値についてこの時間に問い合せます。 返される値は常にフィールドの値の有効な範囲内になります。 値を返せない場合は、フィールドがサポートされていないか他のなんらかの理由で、例外がスローされます。
フィールドが
ChronoField
の場合、ここに問合せを実装します。supported fields
は、NANO_OF_DAY
とMICRO_OF_DAY
を除いて、この時間に基づいて有効な値を返します。int
にフィットするには大きすぎ、UnsupportedTemporalTypeException
をスローします。 他のすべてのChronoField
インスタンスはUnsupportedTemporalTypeException
をスローします。フィールドが
ChronoField
ではない場合、このメソッドの結果は、引数としてthis
を渡してTemporalField.getFrom(TemporalAccessor)
を呼び出すことにより取得されます。 値を取得できるかどうか、および値が何を表すかは、フィールドによって決まります。- 定義:
- インタフェース
TemporalAccessor
のget
- パラメータ:
field
- 取得するフィールド、null以外- 戻り値:
- フィールドの値
- 例外:
DateTimeException
- フィールドの値を取得できない場合、または値がフィールドの有効な値の範囲外の場合UnsupportedTemporalTypeException
- フィールドがサポートされていない場合、または値の範囲がint
を超えている場合ArithmeticException
- 数値のオーバーフローが発生した場合
-
getLong
public long getLong(TemporalField field)指定されたフィールドの値をこの時間からlong
として取得します。これは、指定されたフィールドの値についてこの時間に問い合せます。 値を返せない場合は、フィールドがサポートされていないか他のなんらかの理由で、例外がスローされます。
フィールドが
ChronoField
の場合、ここに問合せを実装します。サポートされているフィールド
は、この時間に基づいて有効な値を返します。 他のすべてのChronoField
インスタンスはUnsupportedTemporalTypeException
をスローします。フィールドが
ChronoField
ではない場合、このメソッドの結果は、引数としてthis
を渡してTemporalField.getFrom(TemporalAccessor)
を呼び出すことにより取得されます。 値を取得できるかどうか、および値が何を表すかは、フィールドによって決まります。- 定義:
- インタフェース
TemporalAccessor
のgetLong
- パラメータ:
field
- 取得するフィールド、null以外- 戻り値:
- フィールドの値
- 例外:
DateTimeException
- フィールドの値を取得できない場合UnsupportedTemporalTypeException
- フィールドがサポートされていない場合ArithmeticException
- 数値のオーバーフローが発生した場合
-
getHour
public int getHour()時フィールドを取得します。- 戻り値:
- 時(0-23)
-
getMinute
public int getMinute()分フィールドを取得します。- 戻り値:
- 分(0-59)
-
getSecond
public int getSecond()秒フィールドを取得します。- 戻り値:
- 秒(0-59)
-
getNano
public int getNano()ナノ秒フィールドを取得します。- 戻り値:
- ナノ秒(0-999,999,999)
-
with
public LocalTime with(TemporalAdjuster adjuster)この時間の調整済のコピーを返します。これは、時間を調整して、この時間に基づく
LocalTime
を返します。 調整は、指定されたアジャスタ戦略オブジェクトを使用して行われます。 どのような調整が行われるかを理解するには、アジャスタのドキュメントを参照してください。単純なアジャスタは、時フィールドなど、いずれか1つのフィールドを設定できるだけです。 より複雑なアジャスタは、時間をその日の最後の時に設定できます。
このメソッドの結果は、指定されたアジャスタで
this
を引数として渡してTemporalAdjuster.adjustInto(Temporal)
メソッドを呼び出すことによって取得されます。このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- 定義:
- インタフェース
Temporal
のwith
- パラメータ:
adjuster
- 使用するアジャスタ、null以外- 戻り値:
- 調整が行われた、
これ
に基づくLocalTime
。null以外 - 例外:
DateTimeException
- 調整ができない場合ArithmeticException
- 数値のオーバーフローが発生した場合
-
with
public LocalTime with(TemporalField field, long newValue)指定されたフィールドを新しい値に設定して、この時間のコピーを返します。これは、指定されたフィールドの値を変更して、この時間に基づく
LocalTime
を返します。 これを使用すると、時、分、秒などのサポートされているフィールドを変更できます。 値を設定できない場合は、フィールドがサポートされていないか他の理由のために、例外がスローされます。フィールドが
ChronoField
の場合は、調整はここで実装されます。 サポートされるフィールドは次のように動作します。NANO_OF_SECOND
- 指定された「1秒のうちのナノ秒」を使ってLocalTime
を返します。 時、分、および秒は変更されません。NANO_OF_DAY
- 指定された「1日のうちのナノ秒」を使ってLocalTime
を返します。 これは、時間を完全に置き換えるもので、ofNanoOfDay(long)
と同等です。MICRO_OF_SECOND
- 「1秒のうちのナノ秒」を、指定された「1秒のうちのマイクロ秒」に1,000を掛けた値に置き換えてLocalTime
を返します。 時、分、および秒は変更されません。MICRO_OF_DAY
- 指定された「1日のうちのマイクロ秒」を使ってLocalTime
を返します。 これは、時間を完全に置き換えるもので、「1日のうちのマイクロ秒」に1,000を掛けた値でofNanoOfDay(long)
を使用することと同等です。MILLI_OF_SECOND
- 「1秒のうちのナノ秒」を、指定された「1秒のうちのミリ秒」に1,000,000を掛けた値に置き換えてLocalTime
を返します。 時、分、および秒は変更されません。MILLI_OF_DAY
- 指定された「1日のうちのミリ秒」を使ってLocalTime
を返します。 これは、時間を完全に置き換えるもので、「1日のうちのミリ秒」に1,000,000を掛けた値でofNanoOfDay(long)
を使用することと同等です。SECOND_OF_MINUTE
- 指定された「1分のうちの秒」を使ってLocalTime
を返します。 時、分、および「1秒のうちのナノ秒」は変更されません。SECOND_OF_DAY
- 指定された「1日のうちの秒」を使ってLocalTime
を返します。 「1秒のうちのナノ秒」は変更されません。MINUTE_OF_HOUR
- 指定された「1時間のうちの分」を使ってLocalTime
を返します。 時、「1分のうちの秒」、および「1秒のうちのナノ秒」は変更されません。MINUTE_OF_DAY
- 指定された「1日のうちの分」を使ってLocalTime
を返します。 「1分のうちの秒」および「1秒のうちのナノ秒」は変更されません。HOUR_OF_AMPM
- 指定された「午前または午後の時」を使ってLocalTime
を返します。 午前/午後、「1時間のうちの分」、「1分のうちの秒」、および「1秒のうちのナノ秒」は変更されません。CLOCK_HOUR_OF_AMPM
- 指定された「午前または午後のクロック時間」を使ってLocalTime
を返します。 午前/午後、「1時間のうちの分」、「1分のうちの秒」、および「1秒のうちのナノ秒」は変更されません。HOUR_OF_DAY
- 指定された「1日のうちの時」を使ってLocalTime
を返します。 「1時間のうちの分」、「1分のうちの秒」、および「1秒のうちのナノ秒」は変更されません。CLOCK_HOUR_OF_DAY
- 指定された「1日のうちのクロック時間」を使ってLocalTime
を返します。 「1時間のうちの分」、「1分のうちの秒」、および「1秒のうちのナノ秒」は変更されません。AMPM_OF_DAY
- 指定された午前/午後を使ってLocalTime
を返します。 「午前または午後の時」、「1時間のうちの分」、「1分のうちの秒」、および「1秒のうちのナノ秒」は変更されません。
いずれの場合も、新しい値がフィールドの値の有効範囲外にあると
DateTimeException
がスローされます。他のすべての
ChronoField
インスタンスはUnsupportedTemporalTypeException
をスローします。フィールドが
ChronoField
ではない場合、このメソッドの結果は、this
を引数として渡してTemporalField.adjustInto(Temporal, long)
を呼び出すことによって取得されます。 この場合、インスタントを調整するかどうかおよびどのように調整するかはフィールドによって決まります。このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- 定義:
- インタフェース
Temporal
のwith
- パラメータ:
field
- 結果に設定するフィールド、null以外newValue
- 結果のフィールドの新しい値- 戻り値:
- 指定されたフィールドが設定された、
これ
に基づくLocalTime
。null以外 - 例外:
DateTimeException
- フィールドを設定できない場合UnsupportedTemporalTypeException
- フィールドがサポートされていない場合ArithmeticException
- 数値のオーバーフローが発生した場合
-
withHour
public LocalTime withHour(int hour)時の値を変更して、このLocalTime
のコピーを返します。このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- パラメータ:
hour
- 結果に設定される時(0-23)- 戻り値:
- リクエストされた時を含む、この時間に基づく
LocalTime
。null以外 - 例外:
DateTimeException
- 時の値が無効である場合
-
withMinute
public LocalTime withMinute(int minute)分の値を変更して、このLocalTime
のコピーを返します。このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- パラメータ:
minute
- 結果に設定される分(0-59)- 戻り値:
- リクエストされた分を含む、この時間に基づく
LocalTime
。null以外 - 例外:
DateTimeException
- 分の値が無効である場合
-
withSecond
public LocalTime withSecond(int second)秒の値を変更して、このLocalTime
のコピーを返します。このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- パラメータ:
second
- 結果に設定される秒(0-59)- 戻り値:
- リクエストされた秒を含む、この時間に基づく
LocalTime
。null以外 - 例外:
DateTimeException
- 秒の値が無効である場合
-
withNano
public LocalTime withNano(int nanoOfSecond)ナノ秒の値を変更して、このLocalTime
のコピーを返します。このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- パラメータ:
nanoOfSecond
- 結果に設定されるナノ秒(0-999,999,999)- 戻り値:
- リクエストされたナノ秒を含む、この時間に基づく
LocalTime
。null以外 - 例外:
DateTimeException
- ナノ秒の値が無効である場合
-
truncatedTo
public LocalTime truncatedTo(TemporalUnit unit)時間が切り捨てられた、このLocalTime
のコピーを返します。切り詰めでは、指定された単位よりも小さいフィールドをゼロに設定して、元の時間のコピーを返します。 たとえば、
分
単位で切り詰めると、秒およびナノ秒フィールドはゼロに設定されます。単位は、標準日の長さを余りなしで等分するデュレーションを持つ必要があります。 これには、
ChronoUnit
とDAYS
で提供されるすべての時間単位が含まれます。 他の単位は例外をスローします。このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- パラメータ:
unit
- 切り捨てを行う単位、nullでない- 戻り値:
- 時間が切り捨てられた、この時間に基づく
LocalTime
。null以外 - 例外:
DateTimeException
- 切り捨てられない場合UnsupportedTemporalTypeException
- 単位がサポートされていない場合
-
plus
public LocalTime plus(TemporalAmount amountToAdd)この時刻のコピーに指定された時間を追加したものを返します。これは、指定された量を加算して、この時間に基づく
LocalTime
を返します。 この量は通常Duration
ですが、TemporalAmount
インタフェースを実装する他のどの型であってもかまいません。計算は、
TemporalAmount.addTo(Temporal)
を呼び出すことによって量オブジェクトに委譲されます。 量実装は加算を任意の方法で自由に実装できますが、通常はplus(long, TemporalUnit)
にコールバックします。 正常に加算できるかどうかを判断するには、量実装のドキュメントを参照してください。このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- 定義:
- インタフェース
Temporal
のplus
- パラメータ:
amountToAdd
- 加算する量、nullでない- 戻り値:
- 加算が行われた、この時間に基づく
LocalTime
。null以外 - 例外:
DateTimeException
- 加算できない場合ArithmeticException
- 数値のオーバーフローが発生した場合
-
plus
public LocalTime plus(long amountToAdd, TemporalUnit unit)この時刻のコピーに指定された時間を追加したものを返します。これは、その単位での量を加算して、この時間に基づく
LocalTime
を返します。 量を加算できない場合、単位がサポートされていないか他の理由のために、例外がスローされます。フィールドが
ChronoUnit
の場合は、加算はここで実装されます。 サポートされるフィールドは次のように動作します。NANOS
- 指定されたナノ秒数を加算してLocalTime
を返します。 これはplusNanos(long)
と同等です。MICROS
- 指定されたマイクロ秒数を加算してLocalTime
を返します。 これは、量が1,000倍されたplusNanos(long)
と同等です。MILLIS
- 指定されたミリ秒数を加算してLocalTime
を返します。 これは、量が1,000,000倍されたplusNanos(long)
と同等です。SECONDS
- 指定された秒数を加算してLocalTime
を返します。 これはplusSeconds(long)
と同等です。MINUTES
- 指定された分数を加算してLocalTime
を返します。 これはplusMinutes(long)
と同等です。HOURS
- 指定された時間数を加算してLocalTime
を返します。 これはplusHours(long)
と同等です。HALF_DAYS
- 指定された半日数を加算してLocalTime
を返します。 これは、量を12倍にした値によるplusHours(long)
と同等です。
他のすべての
ChronoUnit
インスタンスはUnsupportedTemporalTypeException
をスローします。フィールドが
ChronoUnit
でない場合、このメソッドの結果は、this
を引数として渡してTemporalUnit.addTo(Temporal, long)
を呼び出すことによって取得されます。 この場合、加算を実行するかどうかおよびどのように実行するかは単位によって決まります。このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- 定義:
- インタフェース
Temporal
のplus
- パラメータ:
amountToAdd
- 結果に加算する単位の量、負も可unit
- 加算する量の単位、nullでない- 戻り値:
- 指定された量が加算された、この時間に基づく
LocalTime
。null以外 - 例外:
DateTimeException
- 加算できない場合UnsupportedTemporalTypeException
- 単位がサポートされていない場合ArithmeticException
- 数値のオーバーフローが発生した場合
-
plusHours
public LocalTime plusHours(long hoursToAdd)指定された時間数を加算して、このLocalTime
のコピーを返します。これは、指定された時間数をこの時間に加算して、新しい時間を返します。 この計算は深夜零時でラップします。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- パラメータ:
hoursToAdd
- 加算する時間数。負の値の場合もある- 戻り値:
- その時間数が加算された、この時間に基づく
LocalTime
。null以外
-
plusMinutes
public LocalTime plusMinutes(long minutesToAdd)指定された分数を加算して、このLocalTime
のコピーを返します。これは、指定された分数をこの時間に加算して、新しい時間を返します。 この計算は深夜零時でラップします。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- パラメータ:
minutesToAdd
- 加算する分数。負の値の場合もある- 戻り値:
- その分数が加算された、この時間に基づく
LocalTime
。null以外
-
plusSeconds
public LocalTime plusSeconds(long secondstoAdd)指定された秒数を加算して、このLocalTime
のコピーを返します。これは、指定された秒数をこの時間に加算して、新しい時間を返します。 この計算は深夜零時でラップします。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- パラメータ:
secondstoAdd
- 加算する秒数。負の値の場合もある- 戻り値:
- その秒数が加算された、この時間に基づく
LocalTime
。null以外
-
plusNanos
public LocalTime plusNanos(long nanosToAdd)指定されたナノ秒数を加算して、このLocalTime
のコピーを返します。これは、指定されたナノ秒数をこの時間に加算して、新しい時間を返します。 この計算は深夜零時でラップします。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- パラメータ:
nanosToAdd
- 加算するナノ秒数。負の値の場合もある- 戻り値:
- そのナノ秒数が加算された、この時間に基づく
LocalTime
。null以外
-
minus
public LocalTime minus(TemporalAmount amountToSubtract)指定された量を減算して、この時間のコピーを返します。これは、指定された量を減算して、この時間に基づく
LocalTime
を返します。 この量は通常Duration
ですが、TemporalAmount
インタフェースを実装する他のどの型であってもかまいません。計算は、
TemporalAmount.subtractFrom(Temporal)
を呼び出すことによって量オブジェクトに委譲されます。 量実装は減算を任意の方法で自由に実装できますが、通常はminus(long, TemporalUnit)
にコールバックします。 正常に減算できるかどうかを判断するには、量実装のドキュメントを参照してください。このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- 定義:
- インタフェース
Temporal
のminus
- パラメータ:
amountToSubtract
- 減算する量、nullでない- 戻り値:
- 減算が行われた、この時間に基づく
LocalTime
。null以外 - 例外:
DateTimeException
- 減算ができない場合ArithmeticException
- 数値のオーバーフローが発生した場合
-
minus
public LocalTime minus(long amountToSubtract, TemporalUnit unit)指定された量を減算して、この時間のコピーを返します。これは、その単位での量を減算して、この時間に基づく
LocalTime
を返します。 量を減算できない場合、単位がサポートされていないか他の理由のために、例外がスローされます。このメソッドは、量を符号反転した
plus(long, TemporalUnit)
と同等です。 加算および減算がどのように行われるかについての詳しい説明は、そのメソッドを参照してください。このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- 定義:
- インタフェース
Temporal
のminus
- パラメータ:
amountToSubtract
- 結果から減算する単位の量、負も可unit
- 減算する量の単位、nullでない- 戻り値:
- 指定された量が減算された、この時間に基づく
LocalTime
。null以外 - 例外:
DateTimeException
- 減算ができない場合UnsupportedTemporalTypeException
- 単位がサポートされていない場合ArithmeticException
- 数値のオーバーフローが発生した場合
-
minusHours
public LocalTime minusHours(long hoursToSubtract)指定された時間数を減算して、このLocalTime
のコピーを返します。これは、指定された時間数をこの時間から減算して、新しい時間を返します。 この計算は深夜零時でラップします。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- パラメータ:
hoursToSubtract
- 減算する時間数。負の値の場合もある- 戻り値:
- その時間数が減算された、この時間に基づく
LocalTime
。null以外
-
minusMinutes
public LocalTime minusMinutes(long minutesToSubtract)指定された分数を減算して、このLocalTime
のコピーを返します。これは、指定された分数をこの時間から減算して、新しい時間を返します。 この計算は深夜零時でラップします。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- パラメータ:
minutesToSubtract
- 減算する分数。負の値の場合もある- 戻り値:
- その分数が減算された、この時間に基づく
LocalTime
。null以外
-
minusSeconds
public LocalTime minusSeconds(long secondsToSubtract)指定された秒数を減算して、このLocalTime
のコピーを返します。これは、指定された秒数をこの時間から減算して、新しい時間を返します。 この計算は深夜零時でラップします。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- パラメータ:
secondsToSubtract
- 減算する秒数。負の値の場合もある- 戻り値:
- その秒数が減算された、この時間に基づく
LocalTime
。null以外
-
minusNanos
public LocalTime minusNanos(long nanosToSubtract)指定されたナノ秒数を減算して、このLocalTime
のコピーを返します。これは、指定されたナノ秒数をこの時間から減算して、新しい時間を返します。 この計算は深夜零時でラップします。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- パラメータ:
nanosToSubtract
- 減算するナノ秒数。負の値の場合もある- 戻り値:
- そのナノ秒数が減算された、この時間に基づく
LocalTime
。null以外
-
query
public <R> R query(TemporalQuery<R> query)指定された問合せを使用してこの時間を問い合せます。これは、指定された問合せ方針オブジェクトを使用してこの時間を問い合せます。
TemporalQuery
オブジェクトは結果を取得するために使用するロジックを定義します。 このメソッドの結果を理解するには、問合せのドキュメントをお読みください。このメソッドの結果は、
this
を引数として渡して、指定した問合せでTemporalQuery.queryFrom(TemporalAccessor)
メソッドを呼び出すことによって取得します。- 定義:
- インタフェース
TemporalAccessor
のquery
- 型パラメータ:
R
- 結果の型- パラメータ:
query
- 呼び出す問合せ、null以外- 戻り値:
- 問合せ結果、nullが返されることがある(問合せによって定義される)
- 例外:
DateTimeException
- 問い合わせできない場合(問合せによって定義される)ArithmeticException
- 数値のオーバーフローが発生した場合(問合せによって定義される)
-
adjustInto
指定された時間的オブジェクトを、このオブジェクトと同じ時間を持つように調整します。これは、時間をこれと同じになるように変更して、入力と同じ識別可能な型の時間的オブジェクトを返します。
この調整は、
ChronoField.NANO_OF_DAY
をフィールドとして渡してTemporal.with(TemporalField, long)
を使用することと同等です。ほとんどのケースで、
Temporal.with(TemporalAdjuster)
を使用して、呼び出しパターンを逆にすると明確になります。// these two lines are equivalent, but the second approach is recommended temporal = thisLocalTime.adjustInto(temporal); temporal = temporal.with(thisLocalTime);
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- 定義:
- インタフェース
TemporalAdjuster
のadjustInto
- パラメータ:
temporal
- 調整するターゲット・オブジェクト、null以外- 戻り値:
- 調整されるオブジェクト、null以外
- 例外:
DateTimeException
- 調整を実行できない場合ArithmeticException
- 数値のオーバーフローが発生した場合
-
until
public long until(Temporal endExclusive, TemporalUnit unit)もう一方の時間までの時間量を指定された単位で計算します。これは、1つの
TemporalUnit
を単位として、2つのLocalTime
オブジェクト間の時間量を計算します。 始点と終点は、これ
と指定された時間です。 終了が開始より前である場合、結果は負になります。 このメソッドに渡されたTemporal
は、from(TemporalAccessor)
を使用してLocalTime
に変換されます。 たとえば、2つの時間の間の時間数は、startTime.until(endTime, HOURS)
を使用して計算できます。この計算では、2つの時間の間の完全な単位の数を表す整数を返します。 たとえば、11:30と13:29の間の時間単位の量は、2時間には1分足りないため、1時間のみとなります。
このメソッドを使用する等価な方法が2つあります。 1つ目はこのメソッドを呼び出すことです。 2つ目は
TemporalUnit.between(Temporal, Temporal)
を使用することです。// these two lines are equivalent amount = start.until(end, MINUTES); amount = MINUTES.between(start, end);
この選択は、コードが読みやすくなるのはどちらかに基づいて行ってください。計算は
ChronoUnit
のこのメソッドに実装します。 サポートされている単位は、NANOS
、MICROS
、MILLIS
、SECONDS
、MINUTES
、HOURS
、およびHALF_DAYS
です。 その他のChronoUnit
値は例外をスローします。単位が
ChronoUnit
でない場合、このメソッドの結果は、this
を1つ目の引数として、変換される入力temporal (一時)を2つ目の引数として渡してTemporalUnit.between(Temporal, Temporal)
を呼び出すことによって取得します。このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- 定義:
- インタフェース
Temporal
のuntil
- パラメータ:
endExclusive
-LocalTime
に変換される終了時間(これを含まない)。null以外unit
- 量を測定する単位、null以外- 戻り値:
- この時間から終了時間までの時間量
- 例外:
DateTimeException
- その量を計算できないか、終了時間をLocalTime
に変換できない場合UnsupportedTemporalTypeException
- 単位がサポートされていない場合ArithmeticException
- 数値のオーバーフローが発生した場合
-
format
public String format(DateTimeFormatter formatter)指定されたフォーマッタを使用してこの時間を書式設定します。この時間がフォーマッタに渡されて、文字列が生成されます。
- パラメータ:
formatter
- 使用するフォーマッタ、null以外- 戻り値:
- 書式設定された時間文字列。null以外
- 例外:
DateTimeException
- 出力時にエラーが発生した場合
-
atDate
public LocalDateTime atDate(LocalDate date)この時間を日付と組み合せてLocalDateTime
を作成します。これは、指定された日付でこの時間から形成された
LocalDateTime
を返します。 日付と時間のすべての可能性のある組合わせが有効です。- パラメータ:
date
- 組み合せる日付。null以外- 戻り値:
- この時間と指定された日付から形成されたローカル日付/時間。null以外
-
atOffset
public OffsetTime atOffset(ZoneOffset offset)この時間をオフセットと組み合せてOffsetTime
を作成します。これは、指定されたオフセットでこの時間から形成された
OffsetTime
を返します。 時間とオフセットの考えられるすべての組み合せが有効です。- パラメータ:
offset
- 組み合わせるオフセット、nullでない- 戻り値:
- この時間と指定されたオフセットから形成されたオフセット時間。null以外
-
toSecondOfDay
public int toSecondOfDay()時間を1日のうちの秒数(0
から24 * 60 * 60 - 1
)として抽出します。- 戻り値:
- この時間と同等の「1日のうちの秒」
-
toNanoOfDay
public long toNanoOfDay()時間を1日のナノ秒(0
から24 * 60 * 60 * 1,000,000,000 - 1
)として抽出します。- 戻り値:
- この時間と同等の「1日のうちのナノ秒」
-
toEpochSecond
public long toEpochSecond(LocalDate date, ZoneOffset offset)このLocalTime
を1970-01-01T00:00:00Zの時代からの秒数に変換します。これは、このローカル時間と指定された日付およびオフセットを組み合わせて、1970-01-01T00:00:00Zからの経過秒数である第2の値を計算します。 エポックより後の時系列上のインスタントは正で、それより前は負になります。
- パラメータ:
date
- ローカル日付。null以外offset
- ゾーンオフセット。null以外- 戻り値:
- 1970-01-01T00:00:00Zの時代からの秒数。
- 導入されたバージョン:
- 9
-
compareTo
public int compareTo(LocalTime other)この時間を別の時間と比較します。この比較は、1日のうちのそれらのローカル時間の時系列上の位置に基づいています。
Comparable
に定義されているとおりに、「equalsと一致」しています。- 定義:
compareTo
、インタフェース:Comparable<LocalTime>
- パラメータ:
other
- 比較対象のもう一方の時間。null以外- 戻り値:
- コンパレータ値、小さい場合は負、大きい場合は正
-
isAfter
public boolean isAfter(LocalTime other)この時間が、指定された時間より後にあるかどうかをチェックします。この比較は、1日のうちのその時間の時系列上の位置に基づいています。
- パラメータ:
other
- 比較対象のもう一方の時間。null以外- 戻り値:
- これが指定された時間より後にある場合はtrue
-
isBefore
public boolean isBefore(LocalTime other)この時間が、指定された時間より前にあるかどうかをチェックします。この比較は、1日のうちのその時間の時系列上の位置に基づいています。
- パラメータ:
other
- 比較対象のもう一方の時間。null以外- 戻り値:
- この時点が指定された時間より前にある場合はtrue
-
equals
public boolean equals(Object obj)この時間がもう一方の時間と等しいかどうかを確認します。この比較は、1日のうちのその時間の時系列上の位置に基づいています。
LocalTime
型のオブジェクトのみが比較され、それ以外の型はfalseを返します。 2つのTemporalAccessor
インスタンスの日付を比較するには、ChronoField.NANO_OF_DAY
をコンパレータとして使用します。- オーバーライド:
equals
、クラス:Object
- パラメータ:
obj
- チェックするオブジェクト、nullはfalseを返す- 戻り値:
- これがもう一方の時間と等しい場合はtrue
- 関連項目:
Object.hashCode()
、HashMap
-
hashCode
public int hashCode()この時間のハッシュ・コード。- オーバーライド:
hashCode
、クラス:Object
- 戻り値:
- 適切なハッシュ・コード
- 関連項目:
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
toString
public String toString()この時間をString
として出力します(10:15
など)。この出力は、次のISO-8601形式のいずれかになります。
HH:mm
HH:mm:ss
HH:mm:ss.SSS
HH:mm:ss.SSSSSS
HH:mm:ss.SSSSSSSSS
-