In Java ist das Erstellen einer ArrayList mit einer Anfangsgröße eine gängige Vorgehensweise zur Optimierung der Leistung. Es ist jedoch wichtig, den Unterschied zwischen Größe und Kapazität zu verstehen, wenn Sie die Methode add() verwenden.
Frage:
Warum beim Erstellen einer ArrayList mit einer Anfangsgröße? Können Sie nicht auf den zugewiesenen Speicherplatz zugreifen?
Antwort:
Die anfängliche Größe Der Wert, den Sie beim Erstellen einer ArrayList mit dem Konstruktor ArrayList<>(initialSize) angeben, legt die interne Kapazität der ArrayList fest. Die Größe hingegen stellt die Anzahl der Elemente dar, die sich derzeit in der ArrayList befinden.
Wenn Sie mit der Methode add(index, element) ein Element zu einer ArrayList hinzufügen, geben Sie die Position (den Index) an, an der Das Element wird eingefügt. Wenn Sie versuchen, ein Element zu einem Index hinzuzufügen, der die aktuelle Größe der ArrayList überschreitet, wird eine Ausnahme außerhalb der Grenzen auftreten.
Dies liegt daran, dass die Methode add() die Größe der ArrayList durch Inkrementieren ändert es um eins. Dies hat keinen Einfluss auf die Kapazität, die unverändert bleibt.
Um mehrere Elemente zur anfänglichen Kapazität einer ArrayList hinzuzufügen, können Sie eine Schleife verwenden:
<code class="java">for (int i = 0; i < initialSize; i++) { arr.add(0); }</code>
Diese Schleife fügt der ArrayList iterativ Elemente hinzu , wodurch die anfängliche Kapazität, die Sie bei der Erstellung festgelegt haben, effektiv genutzt wird. Sobald die Schleife abgeschlossen ist, können Sie Elemente mit den Indizes 0 bis (initialSize - 1) ändern.
Das obige ist der detaillierte Inhalt vonWarum kann ich in Java nicht auf die Anfangskapazität einer ArrayList zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!