Почему сравнение удваивается настолько медленнее, чем сравнение ints в Java?

81
9

В 64-битной ОС с i5-3570k этот фрагмент кода выполняет в среднем 1,19 секунды:


for (int i = 0; i < 1e9; i++);

Если 1e9 заменяется на 1000000000 или (int)1e9, для выполнения требуется всего 0,0013 секунды.


Для меня достаточно интуитивно, что сравнение удвоений происходит медленнее, если учесть, что удваивается более сложным и удваивает память ints, но почему это происходит гораздо медленнее?

спросил(а) 2015-11-21T01:56:00+03:00 4 года, 10 месяцев назад
0
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема