Combining a Year and MonthDay to get a LocalDate
import java.time.LocalDate; import java.time.Month; import java.time.MonthDay; import java.time.Year; import java.time.format.TextStyle; import java.util.Locale; public class Main { public static void main(String[] args) { MonthDay dec25 = MonthDay.of(Month.DECEMBER, 25); Year year = Year.now(); // Construct and print Christmas days in next five years for (int i = 1; i <= 5; i++) { LocalDate ld = year.plusYears(i).atMonthDay(dec25); int yr = ld.getYear(); String weekDay = ld.getDayOfWeek().getDisplayName(TextStyle.FULL, Locale.getDefault());//from w ww .j ava 2s.com System.out.format("Christmas in %d is on %s.%n", yr, weekDay); } } }