В 64-битной виртуальной машине использование longs вместо ints делает лучше с точки зрения производительности, учитывая, что longs составляет 64 бита в java и, следовательно, вытягивание и обработка 64 битное слово может быть быстрее, чем вытягивание 32-битного слова в 64-битной системе. (Я ожидаю много НЕТ, но я искал подробное объяснение).
EDIT. Я подразумеваю, что "вытягивание и обработка 64-битного слова может быть быстрее, чем вытягивание 32-битного слова в 64-битной системе", потому что я предполагаю, что в 64-битной системе потянув 32 битные данные потребуют, чтобы вы сначала получили 64-битное слово, а затем замаскировали верхние 32 бита.