Maison >Java >javaDidacticiel >Pourquoi ne puis-je pas accéder à la capacité initiale d'une ArrayList en Java ?

Pourquoi ne puis-je pas accéder à la capacité initiale d'une ArrayList en Java ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-03 16:36:29705parcourir

Why Can't I Access the Initial Capacity of an ArrayList in Java?

Taille initiale d'une ArrayList : analyse de la capacité par rapport à la taille

En Java, créer une ArrayList avec une taille initiale est une pratique courante pour optimiser les performances. Cependant, il est crucial de comprendre la distinction entre taille et capacité lors de l'utilisation de la méthode add().

Question :

Lors de la création d'une ArrayList avec une taille initiale, pourquoi ne pouvez-vous pas accéder à l'espace alloué ?

Réponse :

La valeur de taille initiale que vous fournissez lors de la création d'un ArrayList à l'aide des ensembles de constructeur ArrayList<>(initialSize) la capacité interne de l’ArrayList. La taille, quant à elle, représente le nombre d'éléments actuellement dans l'ArrayList.

Lorsque vous ajoutez un élément à une ArrayList à l'aide de la méthode add(index, element), vous spécifiez la position (index) où l'élément sera inséré. Si vous tentez d'ajouter un élément à un index qui dépasse la taille actuelle de l'ArrayList, vous rencontrerez une exception hors limites.

En effet, la méthode add() modifie la taille de l'ArrayList en incrémentant par un. Cela n'affecte pas la capacité, qui reste inchangée.

Pour ajouter plusieurs éléments à la capacité initiale d'une ArrayList, vous pouvez utiliser une boucle :

<code class="java">for (int i = 0; i < initialSize; i++) {
  arr.add(0);
}</code>

Cette boucle ajoute de manière itérative des éléments à l'ArrayList , en utilisant efficacement la capacité initiale que vous avez définie lors de sa création. Une fois la boucle terminée, vous pouvez modifier les éléments aux indices 0 à (initialSize - 1).

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