¿Por qué byte convertido Java y cortos operandos de enteros durante la promoción numérica

StackOverflow https://stackoverflow.com/questions/4575637

  •  14-10-2019
  •  | 
  •  

Pregunta

¿Cuáles son las razones detrás de la extensión de los pequeños tipos de datos (por ejemplo byte) a int durante el proceso numérico Promoción ? ¿No sería posible llevar a cabo la mayor parte de las operaciones directamente sobre estos tipos de datos más pequeños?

¿Fue útil?

Solución

La máquina virtual es una máquina virtual, el JIT se traduce esto a código nativo y optimiza entonces. Todos los registros son o bien de 32 bits o de 64 bits y las operaciones de "más cortos" no son necesariamente y más rápido.

Otros consejos

La máquina virtual no admite números enteros menores de 4 octetos, por lo que cuando se ejecuta en la máquina virtual se está operando en 4 octetos enteros o 8 octetos largos. (Bueno, lo hace para las matrices, Barray sarray, etc, pero no para los valores individuales).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top