Дни Android между двумя датами

Я хочу сравнить две даты для моего приложения для Android, но у меня возникла странная проблема.

Например:

Если я установлюback in the past дата до 127 дней назад:

this.dateEvent = System.currentTimeMillis() - (127 * 24 * 3600 * 1000)

А затем сравните его с текущей датой (Дни между)

    Calendar sDate = getDatePart(new Date(this.dateEvent));
    Calendar eDate = getDatePart(new Date(System.currentTimeMillis()));

    int daysBetween = 0;
    while (sDate.before(eDate))
    {
        sDate.add(Calendar.DAY_OF_MONTH, 1);
        daysBetween ++;
    }

    while (sDate.after(eDate))
    {
        eDate.add(Calendar.DAY_OF_MONTH, 1);
        daysBetween ++;
    }

    return daysBetween;

Он вернет 22, что совсем не то, что ожидалось.

Я сделал что-то не так или это проблема сCalendar учебный класс ?

Ответы на вопрос(12)

Ваш ответ на вопрос