Maison  >  Article  >  Java  >  La différence entre un tableau (Array) et une liste (ArrayList) en Java

La différence entre un tableau (Array) et une liste (ArrayList) en Java

王林
王林original
2019-12-02 17:57:3115755parcourir

La différence entre un tableau (Array) et une liste (ArrayList) en Java

List (ArrayList) est une amélioration du tableau (Array). La façon d'attribuer une liste de tableaux et de créer un tableau est la suivante :

Attribuer une liste de tableaux :

new ArrayList<Employee>(100);

Créer un tableau :

new Employee[100];

Tutoriel vidéo en ligne recommandé : cours java

La différence entre les deux :

1 : Espace size

1. La taille de l'espace du tableau est fixe et vous ne pouvez pas postuler à nouveau lorsque l'espace est insuffisant, vous devez donc déterminer la taille de l'espace appropriée à l'avance.

2. L'espace d'ArrayList augmente de manière dynamique. S'il n'y a pas assez d'espace, il créera un nouveau tableau avec un espace 0,5 fois plus grand que l'espace d'origine, puis copiera tous les éléments dans le nouveau tableau, puis jetez l’ancien tableau. De plus, chaque fois qu'un nouvel élément est ajouté, il est vérifié s'il y a suffisamment d'espace dans le tableau interne.

2 : Contenu de stockage

1. Le tableau Array peut contenir des types de base et des types d'objets.

2. ArrayList ne peut contenir que des types d'objets.

Il est à noter que les tableaux Array doivent contenir des éléments du même type lorsqu'ils sont stockés. Ce n'est pas nécessairement vrai pour ArrayList, car ArrayList peut stocker des objets.

Trois : Méthode

En tant que version améliorée d'Array, ArrayList est bien sûr plus diversifiée qu'Array en termes de méthodes. Par exemple, ajoutez tout addAll(), supprimez tout removeAll(), renvoyez l'itérateur iterator(), etc.

Scénarios applicables :

Si nous voulons sauvegarder certaines données qui existeront et resteront inchangées pendant tout le programme en cours d'exécution, nous pouvons les mettre dans un tableau global, mais si nous voulons simplement Si nous Nous voulons sauvegarder les données sous la forme d'un tableau sans ajouter d'opérations aux données, mais juste pour faciliter notre recherche, nous pouvons alors choisir ArrayList.

Et il y a une autre chose que nous devons savoir, c'est-à-dire que si nous devons déplacer ou supprimer des éléments fréquemment, ou traiter une quantité extrêmement importante de données, alors utiliser ArrayList n'est vraiment pas un bon choix , car son efficacité est très faible et il est très difficile d'utiliser des tableaux pour effectuer de telles actions. Ensuite, nous pouvons envisager de choisir LinkedList.

Articles et tutoriels connexes recommandés : Introduction au langage Java

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!

Déclaration:
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