LocalDate の紹介と使用法

1. LocalDateとは何ですか?

始める前に、LocalDate について簡単に紹介します。これは、タイムゾーン情報なしで日付を表すために Java 8 で導入された日付クラスです。つまり、日付に焦点を当て、特定の時刻は無視されます。こうすることで、日付だけを気にする問題を解くことに集中できます。

2. LocalDate オブジェクトを作成して初期化する

次に、LocalDate オブジェクトを作成して初期化する方法を見てみましょう。一般的な方法をいくつか示します。

  • now() メソッドを使用して現在の日付を取得します。
LocalDate today = LocalDate.now();
System.out.println("今天的日期是:" + today);
  • of() メソッドを使用して年、月、日を指定し、LocalDate オブジェクトを作成します。
LocalDate specialDay = LocalDate.of(2023, 8, 15);
System.out.println("特殊的日子是:" + specialDay);
  • 文字列を解析して LocalDate オブジェクトを取得します。
String dateStr = "2023-08-15";
LocalDate parsedDate = LocalDate.parse(dateStr);
System.out.println("解析得到的日期是:" + parsedDate);

 

3. LocalDate の共通メソッドと操作

次に、日付の問題をより適切に処理するために、LocalDate の一般的なメソッドと操作をいくつか理解しましょう。

  • 年、月、日、その他の日付の情報を取得します。
int year = today.getYear();
Month month = today.getMonth();
int dayOfMonth = today.getDayOfMonth();

System.out.println("年份是:" + year);
System.out.println("月份是:" + month);
System.out.println("日期是:" + dayOfMonth);
  • 日付の順序を判断する:
boolean isBefore = today.isBefore(specialDay);
boolean isAfter = today.isAfter(specialDay);

System.out.println("是不是比特殊的日子早?" + isBefore);
System.out.println("是不是比特殊的日子晚?" + isAfter);
  • 年、月、日およびその他の日付の情報を変更します。
LocalDate modifiedDate = today.withYear(2024).withMonth(12).withDayOfMonth(31);
System.out.println("修改后的日期是:" + modifiedDate);
  • 日付間の差異を計算します。
Period period = today.until(specialDay);
int daysBetween = period.getDays();

System.out.println("今天和特殊日子之间相差了:" + daysBetween + " 天");
  • 日付を指定した文字列としてフォーマットします。
String formattedDate = today.format(DateTimeFormatter.ofPattern("yyyy年MM月dd日"));
System.out.println("格式化后的日期是:" + formattedDate);

おすすめ

転載: blog.csdn.net/weixin_58724261/article/details/132308652