Я хочу узнать, что есть самый простой способ исправить значения дня при его настройке. Я имею в виду:Автоматическая коррекция Java Calendar день месяца?
int birthDay = 30;
int birthMonth = 1;
int birthYear = 1980;
Calendar cal = Calendar.getInstance();
cal.set(Calendar.DAY_OF_MONTH, birthDay);
cal.set(Calendar.MONTH, birthMonth);
cal.set(Calendar.YEAR, birthYear);
февраля не день 30. С другой стороны, она имеет особое состояние, 1980 год является годом, что февраль составляет 29 дней. Поэтому я должен получить исправленную стоимость как «1980-февраль-29». Он должен принять максимальный день этого месяца, если я превышу диапазон месяца. Как я могу сделать это простейшим способом, и если я смогу найти решение, которому не нужно писать какой-либо дополнительный код, а не использовать методы класса Calendar, это будет идеально.
EDIT: Я изменил cal.set (Calendar.MONTH, birthMonth-1); to cal.set (Calendar.MONTH, birthMonth); извините за это.
Календарь правильно обрабатывает кучи лет. Поэтому нет необходимости в PS –