从 LocalDate 获取一个月中的第几天,前导零

Get day of month from LocalDate with leading zero

我以 LocalDate dateOfBirthday = LocalDate.of(2000, 1, 1);.

格式获取日期

我需要从那个日期开始得到一个月中的第几天。我使用 dateOfBirthday.getDayOfMonth() 并且它有效 return 1,但我需要得到 01.

我该怎么做?

正如 Benjamin M 在评论中正确指出的那样,01 将是一个字符串(而不是 int)。将日期转换为字符串的正确方法是通过格式化程序。这个给你一个两位数的月份——所以 01 代表 1 月到 12 代表 12 月:

private static final DateTimeFormatter monthFormatter
        = DateTimeFormatter.ofPattern("MM");

要将其与您的出生日期一起使用:

    LocalDate dateOfBirthday = LocalDate.of(2000, 1, 1);
    String twoDigitMonth = dateOfBirthday.format(monthFormatter);
    System.out.println("Month: " + twoDigitMonth);

输出为:

Month: 01