now/of/parseメソッド
文字列から日付/時刻値を生成する – now/of/parseメソッド- public static LocalDateTime now()
- public static LocalDateTime of(int year, int month, int day,
- int hour, int minute [,int second [,int nano]])
- public static LocalDate parse(CharSequence text)
- year:年
- month:月
- day:日
- hour:時
- minute:分
- second:秒
- nano:ナノ秒
- text:日付時刻文字列
java.timeパッケージでは、目的に応じてLocal/Offset/Zoned系のクラスが用意されていますが、これらを生成する方法は共通しています。
まず、現在時刻を表示するには、nowメソッドを利用します。
ofメソッドは、年月日/時分秒を指定してオブジェクトを生成します。parseメソッドを利用することで、日付時刻文字列からオブジェクトを生成することもできます。
TimeCreate.java
package com.example.mynavi.datetime;
import java.time.LocalDateTime;
import java.time.OffsetDateTime;
import java.time.ZoneOffset;
import java.time.ZonedDateTime;
public class TimeCreate {
public static void main(String[] args) {
LocalDateTime local = LocalDateTime.now();
System.out.println(local);
// 結果:2020-01-04T17:05:34.467903900
OffsetDateTime offset = OffsetDateTime.of(
2020, 8, 19, 15, 35, 30, 0, ZoneOffset.of("+09:00"));
System.out.println(offset);
// 結果:2020-08-19T15:35:30+09:00
ZonedDateTime zoned = ZonedDateTime.parse("2020-08-19T15:35:30+09:00[Asia/Tokyo]");
System.out.println(zoned);
// 結果:2020-08-19T15:35:30+09:00[Asia/Tokyo]
}
}
それぞれのオブジェクトからは以下のメソッドを使って、個々の日付/時刻要素にアクセスすることもできます。
| 個々の日付/時刻要素にアクセスするためのメソッド | |
|---|---|
| メソッド | 概要 |
| getYear | 年 |
| getMonth | 月(Month型) |
| getMonthValue | 月(1~12) |
| getDayOfMonth | 日 |
| getDayOfWeek | 曜日 |
| getDayOfYear | 年間通算日 |
| getHour | 時 |
| getMinute | 分 |
| getSecond | 秒 |
| getNano | ナノ秒 |






