Неправильно умножает.

Dima85
Offline
Зарегистрирован: 07.01.2013

Простой пример:

c.print(24*3600)

В ответ я получаю 20864

Хотя должно быть 86400, почему такое происходит?

Когда я умножаю более маленькие цифры допустим 24*60, ответ получаю правильный.

ZagZag
Offline
Зарегистрирован: 08.05.2014

Переполнение переменной типа int, она вмещает максимум 65536

24*3600 = 86400 - 65536 = 20864

Используй long