добавление дней на дату

Я верю , Архитектор Предприятия может сделать это.

9
задан Karen 13 September 2009 в 05:31
поделиться

2 ответа

Объект 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); ' Что я должен do?

Метод 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

Необходимо учитывать то, чем на самом деле является Календарь .

Календарь не является представлением даты. Это представление календаря и его текущее положение. Чтобы получить представление о том, на что календарь указывает в данный момент,

18
ответ дан 4 December 2019 в 11:06
поделиться

Если вы можете изменить это требование с умом, переместите всю необходимую дату / время в JODA, которая является гораздо лучшей библиотекой, с дополнительным бонусом, заключающимся в том, что почти все неизменяемо, что означает многопоточность. бесплатно.

1
ответ дан 4 December 2019 в 11:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: