На 64-битной машине размер int в Java составляет 32 бита или 64 бита?
32 бит. Это одна из особенностей языка Java: размер целого числа не зависит от используемого компьютера. См. соответствующий раздел спецификации .
Размер примитивных данных является частью спецификации виртуальной машины, и не изменяется. Что изменится, так это размер ссылок на объекты, от 32 бит до 64. Таким образом, той же программе потребуется больше памяти на 64-битной JVM. Влияние, которое это оказывает, зависит от вашего приложения, но может быть значительным.
Если вам нужно 64-разрядное целое число, используйте long.
32 бит. Предполагается, что Java будет работать одинаково независимо от машины или ОС, на которой она запущена, и, безусловно, это справедливо, по крайней мере, для примитивных типов данных.
Это одно из следствий лозунга «один раз скомпилируй, запускай где угодно»: выполнение Java не зависит от базового аппаратного размера слова и порядкового номера; JVM работает везде одинаково.
Эта гарантия независимости работает намного лучше, чем попытка абстрагирования ОС; -)
Другим пунктом, который обычно неправильно понимают, является тот факт, что размер из этих типов данных будет всегда одинаковым независимо от архитектура, на которой работает наша программа Так что вы можете запустить свой программа на 64-битной машине, но int всегда будет 32-битной долго, поэтому он будет иметь тот же диапазон. Это верно как для C #, так и для Java.
Вот полная статья по этому вопросу:
Интегральные типы данных в Java и C #.
Да, это 32 бита