Heu... Pas sûr de comprendre la phrase mais les ArrayList de java ne sont pas des listes chainées. Les ArrayList contiennent principalement une taille et une référence vers un tableau de références.
Pour une liste chainée, regarder LinkedList.
Pièce jointe 161857
Cette représentation mémoire est d'ailleurs franchement trop compliqué dans le cas d'une liste d'entiers, et il y a des gens qui travaillent (enfin) pour que java 10 permettent d'avoir un tableau d'entiers plutot qu'un tableau de référence dans ces listes (
Value types).
Java nous détache vraiment beaucoup de ce qui se passe réellement en mémoire et sur le processeur, et la représentation mémoire de mon screenshot ne nous dit pas tout ! Il y a des champs cachés un peu partout...
Un bon programmeur C ou assembleur sait souvent mieux comment marche vraiment le java qu'un programmeur java.
Partager