Maison > Java > javaDidacticiel > Comment recycler la mémoire dans un tableau Java

Comment recycler la mémoire dans un tableau Java

WBOY
Libérer: 2023-05-02 18:46:07
avant
873 Les gens l'ont consulté

1. Analyse de la mémoire

La variable de référence du tableau est juste une référence Cette variable de référence peut pointer vers n'importe quelle mémoire valide uniquement lorsque la référence pointe vers la validité. mémoire, les éléments du tableau sont accessibles via cette variable du tableau.

Comme toutes les variables de référence, les variables de référence sont le moyen fondamental d'accéder à des objets réels. Autrement dit, si vous souhaitez accéder à l'objet tableau lui-même dans le programme, vous ne pouvez y accéder que via la variable de référence de ce tableau.

L'objet tableau réel est stocké dans la mémoire tas ; si la variable de référence du tableau faisant référence à l'objet tableau est une variable locale, alors elle est stockée dans la mémoire de la pile.

2, Exemple

Si le tableau dans la mémoire tas n'a plus de variables de référence pointant vers lui-même, alors Ceci le tableau deviendra un déchet, et la mémoire occupée sera récupérée par le mécanisme de récupération de place du système. Par conséquent, pour utiliser le mécanisme de récupération de place pour récupérer l'espace mémoire occupé par un tableau, vous pouvez attribuer la variable de tableau à null, coupant ainsi la relation de référence entre la variable de référence du tableau et le tableau réel. . Rendant ainsi le tableau réellement inutile.

Sous le principe de la compatibilité mutuelle, une variable de tableau est autorisée à pointer vers un autre tableau réel. Cette opération provoquera l'illusion que la longueur du tableau est variable. Ci-dessous :

public class ArrayInRam {
   
   
   
 
public static void main(String[] args) {
   
   
   
//静态初始化a
int []a= {
   
   
   5,7,20};
//动态初始化b
int []b=new int[4];
//输出b的长度
System.out.println(b.length);
//循环遍历输出a
for(int aa:a) {
   
   
   
System.out.print(aa+"\t");
}
//b引用a
b=a;
//输出b的长度
System.out.println("\n"+b.length);
 
}
 
}
Copier après la connexion

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!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal