Специфікація віртуальної машини Java говорить про обмежену підтримку булевих примітивних типів.
Немає інструкцій віртуальної машини Java, присвячених виключно операціям з булевими значеннями. Натомість вирази в мові програмування Java, які працюють на булевих значеннях, складаються для використання значень типу даних int віртуальної машини Java.
Вищезазначене означає (хоча я, можливо, його неправильно трактував), що тип даних int використовується при роботі з булевими, але це 32-бітова конструкція пам'яті. З огляду на те, що булева інформація представляє лише 1 біт інформації:
- Чому тип байта або короткого типу не використовується як проксі для булевого, а не int?
- Для будь-якого даного JVM який найнадійніший спосіб з’ясувати, скільки саме пам’яті використовується для зберігання булевого типу?