LocalDate
→ MonthDay
Вы можете использовать MonthDay#from(TemporalAccessor)
. Например:
import java.time.LocalDate;
import java.time.MonthDay;
public class Main {
public static void main(String[] args) {
LocalDate date = LocalDate.of(2020, 6, 20);
MonthDay md = MonthDay.from(date);
System.out.println(md);
}
}
Это выведет:
--6-20
MonthDay
→ LocalDate
Проблема здесь в том, что MonthDay
, очевидно, представляет только месяц и день месяца , тогда как LocalDate
дополнительно обозначает год . Вам нужно решить, как определить, какой год использовать. Как только вы это узнаете, тогда два варианта:
Например:
import java.time.LocalDate;
import java.time.MonthDay;
import java.time.Year;
public class Main {
public static void main(String[] args) {
MonthDay md = MonthDay.of(6, 20);
Year year = Year.of(2020);
LocalDate date1 = md.atYear(year.getValue());
LocalDate date2 = year.atMonthDay(md);
System.out.println(date1);
System.out.println(date2);
}
}
Это выведет:
2020-06-20
2020-06-20