Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Java

Java ArrayList meesteren: operaties, methoden en best practices

Java ArrayList klasse

Ontdek de volledige kracht van Java's ArrayList: creëer, manipuleer, en itereer met duidelijke, real-world voorbeelden.

De ArrayList klasse, onderdeel van het Java Collections Framework, implementeert de List interface en biedt een hergrooteerbare array datastructuur. In tegenstelling tot statische arrays, past een ArrayList zijn capaciteit automatisch aan wanneer elementen toegevoegd of verwijderd worden, wat het een dynamische array maakt.

Java ArrayList meesteren: operaties, methoden en best practices

ArrayList vs. Array

Traditionele arrays vereisen een vaste grootte bij declaratie, wat flexibiliteit beperkt. ArrayList overkomt deze beperking door op demand te resizen, wat efficiënte dynamische datahandling mogelijk maakt.


Een ArrayList creëren

Importeer de klasse voor gebruik:

import java.util.ArrayList;

Instantieer met het gewenste elementtype:

// Integer type ArrayList ArrayList intList = new ArrayList<>(); // String type ArrayList ArrayList strList = new ArrayList<>();

Let op: Gebruik wrapper klassen (bijv. Integer voor int) omdat generics geen primitieve types ondersteunen.


Voorbeeld: Een ArrayList creëren

import java.util.ArrayList; class Main { public static void main(String[] args){ ArrayList talen = new ArrayList<>(); talen.add("Java"); talen.add("Python"); talen.add("Swift"); System.out.println("ArrayList: " + talen); } }

Uitvoer

ArrayList: [Java, Python, Swift]

Basisoperaties op ArrayList

Kernoperaties omvatten toevoegen, benaderen, wijzigen, en verwijderen van elementen. Hieronder zijn beknopte code snippets voor elk.

  • Elementen toevoegen
  • Elementen benaderen
  • Elementen wijzigen
  • Elementen verwijderen

1. Elementen toevoegen

Voeg een enkel element toe aan het einde:

ArrayList talen = new ArrayList<>(); talen.add("Java"); talen.add("C"); talen.add("Python"); System.out.println("ArrayList: " + talen);

Uitvoer

ArrayList: [Java, C, Python]

Invoegen op een specifieke index:

talen.add(1, "JavaScript"); talen.add(3, "C++");

Alle elementen uit een collectie toevoegen:

import java.util.ArrayList; import java.util.HashSet; class Main { public static void main(String[] args) { HashSet klinkers = new HashSet<>(); klinkers.add("a"); klinkers.add("e"); klinkers.add("i"); ArrayList alfabet = new ArrayList<>(); alfabet.addAll(klinkers); System.out.println("ArrayList: " + alfabet); } }

Uitvoer

ArrayList: [a, e, i]

2. Elementen benaderen

Opvragen via index:

ArrayList dieren = new ArrayList<>(); dieren.add("Kat"); dieren.add("Hond"); dieren.add("Koe"); String str = dieren.get(1); System.out.print("Element op index 1: " + str);

Uitvoer

Element op index 1: Hond

Itereren met een Iterator indien nodig.


3. Elementen wijzigen

Een bestaand element vervangen:

ArrayList talen = new ArrayList<>(); talen.add("Java"); talen.add("Kotlin"); talen.add("C++"); talen.set(2, "JavaScript"); System.out.println("Gewijzigde ArrayList: " + talen);

Uitvoer

Gewijzigde ArrayList: [Java, Kotlin, JavaScript]

4. Elementen verwijderen

Op index:

ArrayList dieren = new ArrayList<>(); dieren.add("Hond"); dieren.add("Kat"); dieren.add("Paard"); String verwijderd = dieren.remove(2); System.out.println("Bijgewerkte ArrayList: " + dieren); System.out.println("Verwijderd element: " + verwijderd);

Uitvoer

Bijgewerkte ArrayList: [Hond, Kat] Verwijderd element: Paard

Alle elementen wissen met clear() of een range verwijderen met removeAll().


Veelvoorkomende ArrayList methoden

Naast basis CRUD operaties, worden de volgende methoden frequent gebruikt:

MethodeBeschrijving
size()Retourneert het aantal elementen.
sort()Sorteert de lijst.
clone()Creëert een shallow copy.
contains()Controleert op elementaanwezigheid.
ensureCapacity()Pre-allokeert ruimte.
isEmpty()Controleert of de lijst leeg is.
indexOf()Vindt de eerste occurrence index.

Voor een complete lijst, raadpleeg de officiële ArrayList API.


Itereren met for-each

ArrayList dieren = new ArrayList<>(); dieren.add("Koe"); dieren.add("Kat"); dieren.add("Hond"); for (String dier : dieren) { System.out.print(dier + ", "); }

Uitvoer

Koe, Kat, Hond, 

Veelgestelde vragen

Wat is het verschil tussen Java ArrayList en LinkedList?

ArrayListLinkedList
Implementeert List interfaceImplementeert List, Queue, en Deque
Enkel aaneengeslagen geheugenblokNodes met next/prev referenties
Random access O(1)Sequentiële access O(n)
Dynamisch resizenDynamisch resizen

Hoe een ArrayList omzetten naar een array?

String[] arr = new String[talen.size()]; talen.toArray(arr);

Hoe een array omzetten naar ArrayList?

ArrayList lijst = new ArrayList<>(Arrays.asList(arr));

Hoe een ArrayList in één regel creëren en initialiseren?

ArrayList lijst = new ArrayList<>(Arrays.asList("Java", "Python", "C"));

Hoe een ArrayList omzetten naar een String?

String str = talen.toString();

Hoe een ArrayList creëren via de List interface?

List lijst = new ArrayList<>();

Java

  1. Java's final-sleutelwoord begrijpen: variabelen, methoden en klassen
  2. Java instanceof operator: een uitgebreide gids
  3. Java geneste static classes begrijpen: gebruik, verschillen en voorbeelden
  4. Java anonieme inner classes meesteren: definitie, syntax en praktische voorbeelden
  5. Java Singleton patroon uitgelegd: hoe veilig te implementeren en gebruiken
  6. Java Reflectie meesteren: klassen, methoden en velden inspecteren tijdens runtime
  7. Java Vector begrijpen: Gebruik, Kenmerken en Vergelijking met ArrayList
  8. Java Collection-algoritmes: Sorteren, shuffelen en meer
  9. Java ObjectOutputStream: Serialisatie, methoden en praktische voorbeelden
  10. Java Generics: Herbruikbare, type-veilige code bouwen
  11. Java-bestandsbewerkingen onder de knie krijgen met java.io – Aanmaken, lezen, schrijven en verwijderen