De ArrayList gebruiken in Java

Standaard arrays in Java zijn vast in het aantal elementen dat ze kunnen hebben. Als u de elementen in een array wilt verhogen of verlagen, moet u een nieuwe array maken met het juiste aantal elementen uit de inhoud van de oorspronkelijke array. Een alternatief is om de ArrayList klasse. De ArrayList klasse biedt de middelen om dynamische arrays te maken (d.w.z. hun lengte kan toenemen en afnemen).

Importverklaring

java.util.ArrayList importeren;

Maak een ArrayList

Een ArrayList kan worden gemaakt met behulp van de eenvoudige constructor:

ArrayList dynamicArray = new ArrayList ();

Dit maakt een ArrayList met een initiële capaciteit voor tien elementen. Als een grotere (of kleinere) ArrayList is vereist, kan de initiële capaciteit aan de constructor worden doorgegeven. Om ruimte te maken voor twintig elementen:

ArrayList dynamicArray = new ArrayList (20);

De ArrayList vullen

Gebruik de methode toevoegen om een ​​waarde toe te voegen aan de ArrayList:

dynamicArray.add (10); dynamicArray.add (12); dynamicArray.add (20);

Notitie: De ArrayList slaat alleen objecten op, hoewel de bovenstaande regels int-waarden lijken toe te voegen ArrayList deze worden automatisch gewijzigd in Geheel getal objecten zoals ze zijn toegevoegd aan de ArrayList.

Een standaardarray kan worden gebruikt om een ​​te vullen ArrayList door het te converteren naar een lijstcollectie met de methode Arrays.asList en toe te voegen aan de ArrayList de ... gebruiken Voeg alles toe methode:

String [] names = "Bob", "George", "Henry", "Declan", "Peter", "Steven"; ArrayList dynamicStringArray = new ArrayList (20); dynamicStringArray.addAll (Arrays.asList (namen));

Een ding om op te merken ArrayList is dat de elementen niet van hetzelfde objecttype moeten zijn. Hoewel de dynamicStringArray is ingevuld door String-objecten, kan deze nog steeds getalwaarden accepteren:

dynamicStringArray.add (456);

Om de kans op fouten te minimaliseren, kunt u het beste het type objecten opgeven dat u wilt ArrayList te bevatten. Dit kan in de aanmaakfase worden gedaan met behulp van generieke geneesmiddelen:

ArrayList dynamicStringArray = new ArrayList (20);