Объект Calendar
имеет метод add
, который позволяет добавлять или вычитать значения указанного поля.
Например,
Calendar c = new GregorianCalendar(2009, Calendar.JANUARY, 1);
c.add(Calendar.DAY_OF_MONTH, 1);
Константы для указания поля можно найти в «Сводке полей» класса Calendar
.
Просто для дальнейшего использования, Спецификация Java API содержит много полезной информации о том, как использовать классы, являющиеся частью Java API.
Обновление:
Я получаю ошибку, признанную недействительной, но
ожидается int, в 'newDay =
startDate.add (5, 1); ' Что я должен
делать?
Метод add
ничего не возвращает, поэтому попытка присвоить результат вызова Calendar.add
недопустима.
Ошибка компилятора указывает на то, что кто-то пытается присвоить void
переменной типа int
. Это недопустимо, поскольку нельзя присвоить «ничто» переменной int
.
Просто предположение, но, возможно, это то, что пытается быть достигнуто:
// Get a calendar which is set to a specified date.
Calendar calendar = new GregorianCalendar(2009, Calendar.JANUARY, 1);
// Get the current date representation of the calendar.
Date startDate = calendar.getTime();
// Increment the calendar's date by 1 day.
calendar.add(Calendar.DAY_OF_MONTH, 1);
// Get the current date representation of the calendar.
Date endDate = calendar.getTime();
System.out.println(startDate);
System.out.println(endDate);
Выход:
Thu Jan 01 00:00:00 PST 2009
Fri Jan 02 00:00:00 PST 2009
Что нужно учитывать, так это то, чем на самом деле является * 1045.
A Calendar
не является представлением даты. Это представление календаря, на которое он в данный момент указывает. Чтобы получить представление о том, на что указывает календарь в данный момент, необходимо получить Date
из Calendar
, используя метод getTime
.