Григорианский календарь
Я делаю назначение, и это предполагает использование GregorianCalendar. В спецификации сказано, что мне нужно использовать setLenient(false); Как мне это сделать? Мне также нужно установить постоянную дату (01.01.2009), чтобы первый день моей программы всегда был таким.
В нем также говорится, чтобы получить доступ к дню, месяцу и году через это:
get(1) //returns the year
get(2) // returns the month
get(5) /// returns the day
Чтобы добавить n дней к дате, вызовите метод add с номером поля 5: add(5, n);
Чтобы вычесть: добавить (5, -n);
Может кто-нибудь объяснить, что это значит и как это реализовать?
3 ответа
Начните с посещения документации по API здесь. Эти документы объясняют, какие именно методы доступны в классе в Java.
Например, чтобы получить календарь, вы можете:
Calendar c = Calendar.getInstance();
В документации вы увидите, что на самом деле есть несколько способов получить календарь, и по умолчанию используется GregorianCalendar.
Если у вас есть объект Calendar, вы можете вызывать любой метод, передавая необходимые параметры. Например,
c.setLenient(true);
Чтобы использовать методы get, вы должны указать поле, которое вы хотите получить.
int month = c.get(Calendar.MONTH);
и так далее.
Создайте экземпляр Calendar и вызовите на нем setLenient.
Calendar cal = Calendar.getInstance();
cal.setLenient(false);
int month = cal.get(Calendar.MONTH);
ОБНОВИТЬ:
И так как вы упомянули SimpleDateFormat в своем комментарии, вот пример для этого:
Date today = cal.getTime();
DateFormat formatter = new SimpleDateFormat("yyyy-MMM-dd");
System.out.println(formatter.format(today));
Java Almanac является хорошим источником для простых примеров кода, подобных этим.
Чтобы создать экземпляр GregorianCalendar:
Calendar cal = new GregorianCalendar();
cal.setLenient(false);
Рекомендации: