Вот простой тест: я пытаюсь увеличить текущую метку времени на 1 секунду в цикле. Результат не тот, который я ожидаю.Увеличение времени на одну секунду в цикле
public class TimeTest {
public static void main(String[] args) {
Calendar cal = Calendar.getInstance();
for (int i = 0; i < 10; i++) {
cal.add(Calendar.SECOND, i);
System.out.println("Updated = " + cal.getTime());
}
}
}
Вместо аккуратных 1-секундных приращений я получаю приращения от где-то между 5 секундами до 1 секунды.
Updated = Mon May 13 15:12:45 PDT 2013
Updated = Mon May 13 15:12:46 PDT 2013
Updated = Mon May 13 15:12:48 PDT 2013
Updated = Mon May 13 15:12:51 PDT 2013
Updated = Mon May 13 15:12:55 PDT 2013
Updated = Mon May 13 15:13:00 PDT 2013
Updated = Mon May 13 15:13:06 PDT 2013
Updated = Mon May 13 15:13:13 PDT 2013
Updated = Mon May 13 15:13:21 PDT 2013
Updated = Mon May 13 15:13:30 PDT 2013
Подсказка: приращения 1, 2, 3, 4, 5, 6, 7, 8 и 9 (в этом порядке!) :) –
FDinoff прав. В первый раз вы добавляете 1 секунду, затем 2 секунды, затем 3 секунды, затем + x секунд ... :) –