Почему вычитание этих двух эпох милли-милли (в 1927 году) дает странный результат?JAVA

Программисты JAVA общаются здесь
Anonymous
Почему вычитание этих двух эпох милли-милли (в 1927 году) дает странный результат?

Сообщение Anonymous »

Если я запускаю следующую программу, которая анализирует две строки даты, ссылаясь на время 1 секунды друг от друга и сравнивает их: < /p>
public static void main(String[] args) throws ParseException {
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String str3 = "1927-12-31 23:54:07";
String str4 = "1927-12-31 23:54:08";
Date sDt3 = sf.parse(str3);
Date sDt4 = sf.parse(str4);
long ld3 = sDt3.getTime() /1000;
long ld4 = sDt4.getTime() /1000;
System.out.println(ld4-ld3);
}

Вывод:
353

Почему ld4-ld3 , а не 1 (как я ожидал бы от разницы в одной секунде в Times), но 353 ?String str3 = "1927-12-31 23:54:08";
String str4 = "1927-12-31 23:54:09";

Тогда ld4-ld3 будет 1 .

java-версия:



Подробнее здесь: https://stackoverflow.com/questions/684 ... -strange-r

Вернуться в «JAVA»