import java.time.LocalDate;
import java.time.MonthDay;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeFormatterBuilder;
import java.time.temporal.ChronoField;
import java.util.Locale;
class Main {
public static void main
(String args
[]) { // If your string is in --MM-dd format
MonthDay monthDay = MonthDay.parse("--03-10");
// If you want the current year, replace 1 with Year.now().getValue()
LocalDate date = monthDay.atYear(1);
// If your string is in MM-dd format
DateTimeFormatter monthDayFormatter
= DateTimeFormatter.
ofPattern("MM-dd",
Locale.
ENGLISH); monthDay = MonthDay.parse("03-10", monthDayFormatter);
// If you want the current year, replace 1 with Year.now().getValue()
date = monthDay.atYear(1);
// An alternative solution
DateTimeFormatter dtf = new DateTimeFormatterBuilder()
.appendPattern("MM-dd")
// If you want the current year, replace 1 with Year.now().getValue()
.parseDefaulting(ChronoField.YEAR, 1)
date = LocalDate.parse("03-10", dtf);
}
}
aW1wb3J0IGphdmEudGltZS5Mb2NhbERhdGU7CmltcG9ydCBqYXZhLnRpbWUuTW9udGhEYXk7CmltcG9ydCBqYXZhLnRpbWUuZm9ybWF0LkRhdGVUaW1lRm9ybWF0dGVyOwppbXBvcnQgamF2YS50aW1lLmZvcm1hdC5EYXRlVGltZUZvcm1hdHRlckJ1aWxkZXI7CmltcG9ydCBqYXZhLnRpbWUudGVtcG9yYWwuQ2hyb25vRmllbGQ7CmltcG9ydCBqYXZhLnV0aWwuTG9jYWxlOwoKY2xhc3MgTWFpbiB7CiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmcgYXJnc1tdKSB7CiAgICAgICAgLy8gSWYgeW91ciBzdHJpbmcgaXMgaW4gLS1NTS1kZCBmb3JtYXQKICAgICAgICBNb250aERheSBtb250aERheSA9IE1vbnRoRGF5LnBhcnNlKCItLTAzLTEwIik7CiAgICAgICAgLy8gSWYgeW91IHdhbnQgdGhlIGN1cnJlbnQgeWVhciwgcmVwbGFjZSAxIHdpdGggWWVhci5ub3coKS5nZXRWYWx1ZSgpCiAgICAgICAgTG9jYWxEYXRlIGRhdGUgPSBtb250aERheS5hdFllYXIoMSk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGRhdGUpOwoKICAgICAgICAvLyBJZiB5b3VyIHN0cmluZyBpcyBpbiBNTS1kZCBmb3JtYXQKICAgICAgICBEYXRlVGltZUZvcm1hdHRlciBtb250aERheUZvcm1hdHRlciA9IERhdGVUaW1lRm9ybWF0dGVyLm9mUGF0dGVybigiTU0tZGQiLCBMb2NhbGUuRU5HTElTSCk7CiAgICAgICAgbW9udGhEYXkgPSBNb250aERheS5wYXJzZSgiMDMtMTAiLCBtb250aERheUZvcm1hdHRlcik7CiAgICAgICAgLy8gSWYgeW91IHdhbnQgdGhlIGN1cnJlbnQgeWVhciwgcmVwbGFjZSAxIHdpdGggWWVhci5ub3coKS5nZXRWYWx1ZSgpCiAgICAgICAgZGF0ZSA9IG1vbnRoRGF5LmF0WWVhcigxKTsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oZGF0ZSk7CgogICAgICAgIC8vIEFuIGFsdGVybmF0aXZlIHNvbHV0aW9uCiAgICAgICAgRGF0ZVRpbWVGb3JtYXR0ZXIgZHRmID0gbmV3IERhdGVUaW1lRm9ybWF0dGVyQnVpbGRlcigpCiAgICAgICAgICAgICAgICAuYXBwZW5kUGF0dGVybigiTU0tZGQiKQogICAgICAgICAgICAgICAgLy8gSWYgeW91IHdhbnQgdGhlIGN1cnJlbnQgeWVhciwgcmVwbGFjZSAxIHdpdGggWWVhci5ub3coKS5nZXRWYWx1ZSgpCiAgICAgICAgICAgICAgICAucGFyc2VEZWZhdWx0aW5nKENocm9ub0ZpZWxkLllFQVIsIDEpCiAgICAgICAgICAgICAgICAudG9Gb3JtYXR0ZXIoTG9jYWxlLkVOR0xJU0gpOwogICAgICAgIGRhdGUgPSBMb2NhbERhdGUucGFyc2UoIjAzLTEwIiwgZHRmKTsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oZGF0ZSk7CiAgICB9Cn0=