java int taille fixe ou variable?
Est entier taille en java de longueur fixe ou variable taille?
ex: 1 ou 10 000 t à la fois le nombre prend même de l'espace lors de l'allocation?
source d'informationauteur realnumber
Vous devez vous connecter pour publier un commentaire.
Java des entiers de 32 bits (4 octets) par JL.
Source: JLS §4.2 les Types Primitifs et les Valeurs
C'est corrigé dans la taille. Tous les entiers en Java 32 bits, tant du point de vue du programmeur et de la machine.
La La machine virtuelle Java specificationqui décrit le bytecode JVM format, mentionne que chaque
int
est de 32 bits. (Aparté:boolean
valeurs peut prendre un nombre quelconque de bits, comme des objets.)Voici la datasizes pour les types primitifs de Java.
Intéressant de noter ici est que la taille de
boolean
n'est pas clairement défini, mais il est généralement de 8 bits.Un
int
ou unInteger
a taille fixe. UnBigInteger
a taille variable.Il dépend de la JVM.
Dans typique implémentations, boolean, byte, char, short et int sera de 32 bits toujours sur la pile pendant une longue sera 64 bits sur la pile. Dans typique implémentations octets, les chars, les shorts, les services de renseignements et de longs seront leurs "natif" de taille dans les tableaux (qui est, 8, 16, 16, 32 et 64 bits, respectivement).
Dans typique implémentations de la taille des entiers dans les structures de leur taille d'origine si l'alignement permet.
Il est certainement possible que certaines très inhabituel implémentations pourrait utiliser la longueur variable des entiers pour les structures, ou encore sur la pile ou dans des tableaux (mais c'est encore plus difficile de les imaginer et les plus obscures) - mais je n'ai pas vu de qui ne.