La différence entre le tas et la pile :
1. >
1. Pile (système d'exploitation) : automatiquement allouée et libérée par le système d'exploitation, stockant les valeurs des paramètres de fonction, les valeurs des variables locales, etc. Sa méthode de fonctionnement est similaire à la pile dans la structure des données ; 2. Heap (système d'exploitation) : Il est généralement alloué et libéré par le programmeur. Si le programmeur ne le libère pas, il peut être recyclé par. le système d'exploitation à la fin du programme. La méthode d'allocation est similaire dans la liste chaînée.2. Différences dans les méthodes de mise en cache de la pile :
1 La pile utilise un cache de premier niveau. Elles se trouvent généralement dans l'espace de stockage lorsqu'elles sont appelées, et. immédiatement après la fin de l'appel. Release ; 2. Le tas est stocké dans le cache de deuxième niveau et le cycle de vie est déterminé par l'algorithme de récupération de place de la machine virtuelle (pas une fois qu'elle devient orpheline). objet, il peut être recyclé). Par conséquent, la vitesse d’appel de ces objets est relativement faible. Tas : en mémoire, les types de données de référence sont stockés. La taille des types de données de référence ne peut pas être déterminée. Le tas est en fait un espace de stockage dans une structure de liste chaînée qui utilise l'espace dispersé dans la mémoire. le tas est déterminé par La taille du type référence est directement déterminée, et les changements dans la taille du type référence affectent directement les changements dans le tasPile : C'est un type valeur stocké dans la mémoire, le la taille est de 2M, si elle dépasse, une erreur sera signalée et un débordement de mémoire3. Différences entre les structures de données de la pile :
Caractéristiques : Premier entré, dernier sorti
Pour le premier entré, dernier sorti, étant donné que l'implémentation sous-jacente de Linklist est une structure de liste chaînée, nous utilisons Linklist pour explorer ce est premier entré, dernier sortiLe code est le suivant :
package com.zking.list; import java.util.LinkedList; public class Linklisttest { public static void main(String args[]) { LinkedList ll = new LinkedList(); for (int i = 0; i < 5; i++) { ll.addFirst(i); } ll.removeFirst(); for (Object object : ll) { System.out.println(object); } } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!