Найти разницу между двумя датами - PullRequest
0 голосов
/ 16 декабря 2010

На странице JSP у меня есть четыре даты выборки, такие как 01 декабря, 15 декабря, 30 декабря и 15 января. Мне нужно проверить, является ли дата выше и разница текущей даты 15.

Вот моя попытка:

    Calendar calendar = Calendar.getInstance();
    Calendar calendar1 = Calendar.getInstance();
    Calendar calendar2 = Calendar.getInstance();
    Calendar calendar3 = Calendar.getInstance();
    Calendar calendar4 = Calendar.getInstance();

    calendar1.set(2011, 11, 02);
    calendar2.set(2011, 06, 02);
    calendar3.set(2011, 09, 07);
    calendar4.set(2011, 06, 05);

    long milliseconds1 = calendar1.getTimeInMillis();
    long milliseconds2 = calendar.getTimeInMillis();

    long diff = milliseconds2 - milliseconds1;
    long diffDays = diff / (24 * 60 * 60 * 1000);

    if (diffDays <= 15) {
        System.out.println("Fifteen");
    } else {
        System.out.println("No Fifteen");
            }

Я должен проверить условие для всех четырех сценариев, независимо от того, равна ли разница 15 или нет. Поместить эти экземпляры календаря в карту или список. Я не знаю, как это сделать.

Ответы [ 2 ]

1 голос
/ 16 декабря 2010

Я бы порекомендовал использовать для этого joda time .Он также учитывает разницу между часовым поясом и летним временем.Вот пример того, как получить разницу дней между двумя датами.

Days d = Days.daysBetween(startDate, endDate);
int days = d.getDays();
if(days==15){
   //do something
}
0 голосов
/ 13 февраля 2011

С библиотекой date4j :

int days = dt.numDaysFrom(today);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...