Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> Java

Java-ArrayList-Klasse

Java-ArrayList-Klasse

In diesem Tutorial lernen wir die Klasse ArrayList in Java kennen. Anhand von Beispielen lernen wir verschiedene Operationen und Methoden der Arraylist kennen.

Der ArrayList -Klasse des Java Collections Framework stellt die Funktionalität von resizable-arrays bereit .

Es implementiert den List Schnittstelle.


Java-ArrayList vs. Array

In Java müssen wir die Größe eines Arrays deklarieren, bevor wir es verwenden können. Sobald die Größe eines Arrays deklariert ist, ist es schwierig, sie zu ändern.

Um dieses Problem zu lösen, können wir den ArrayList verwenden Klasse. Es ermöglicht uns, in der Größe veränderbare Arrays zu erstellen.

Im Gegensatz zu Arrays können Arraylisten ihre Kapazität automatisch anpassen, wenn wir Elemente hinzufügen oder daraus entfernen. Daher werden Arraylisten auch als dynamische Arrays bezeichnet .


Erstellen einer ArrayList

Vor der Verwendung von ArrayList , müssen wir den java.util.ArrayList importieren Paket zuerst. So können wir Arraylisten in Java erstellen:

ArrayList<Type> arrayList= new ArrayList<>();

Hier Typ gibt den Typ einer Arrayliste an. Zum Beispiel

// create Integer type arraylist
ArrayList<Integer> arrayList = new ArrayList<>();

// create String type arraylist
ArrayList<String> arrayList = new ArrayList<>();

Im obigen Programm haben wir Integer verwendet nicht int. Dies liegt daran, dass wir beim Erstellen einer Arrayliste keine primitiven Typen verwenden können. Stattdessen müssen wir die entsprechenden Wrapper-Klassen verwenden.

Hier, Integer ist die entsprechende Wrapper-Klasse von int . Um mehr zu erfahren, besuchen Sie die Java-Wrapper-Klasse.


Beispiel:ArrayList in Java erstellen

import java.util.ArrayList;

class Main {
  public static void main(String[] args){

    // create ArrayList
    ArrayList<String> languages = new ArrayList<>();

    // Add elements to ArrayList
    languages.add("Java");
    languages.add("Python");
    languages.add("Swift");
    System.out.println("ArrayList: " + languages);
  }
}

Ausgabe

ArrayList: [Java, Python, Swift]

Im obigen Beispiel haben wir einen ArrayList erstellt benannte Sprachen .

Hier haben wir den add() verwendet Methode zum Hinzufügen von Elementen zur Arrayliste. Wir werden mehr über den add() erfahren -Methode später in diesem Tutorial.


Grundlegende Operationen auf ArrayList

Die ArrayList -Klasse stellt verschiedene Methoden bereit, um verschiedene Operationen auf Arraylisten auszuführen. Wir werden uns in diesem Tutorial einige häufig verwendete Arraylist-Operationen ansehen:

  • Elemente hinzufügen
  • Access-Elemente
  • Elemente ändern
  • Elemente entfernen

1. Elemente zu einer ArrayList hinzufügen

Um der Arrayliste ein einzelnes Element hinzuzufügen, verwenden wir den add() Methode des ArrayList Klasse. Zum Beispiel

import java.util.ArrayList;

class Main {
  public static void main(String[] args){
    // create ArrayList
    ArrayList<String> languages = new ArrayList<>();

    // add() method without the index parameter
    languages.add("Java");
    languages.add("C");
    languages.add("Python");
    System.out.println("ArrayList: " + languages);
  }
}

Ausgabe

ArrayList: [Java, C, Python]

Im obigen Beispiel haben wir einen ArrayList erstellt benannte Sprachen . Hier haben wir den add() verwendet Methode zum Hinzufügen von Elementen zu Sprachen .

Um mehr zu erfahren, besuchen Sie die Java ArrayList add().

Andere Möglichkeit, Elemente zur Arrayliste hinzuzufügen

Wie füge ich ein Element an einer bestimmten Position in einer ArrayList hinzu?

Wir können auch eine Indexnummer übergeben als zusätzlicher Parameter zum add() Methode, um ein Element an der angegebenen Position hinzuzufügen. Zum Beispiel

// add JavaScript at index 1
languages.add(1, "JavaScript");

// add C++ at index 3
languages.add(3, "C++");
Wie füge ich alle Elemente eines Sets zu einer Arrayliste hinzu?

Wir können auch alle Elemente einer Sammlung (Set, Map) mit dem addAll() zu einer Arrayliste hinzufügen Methode. Zum Beispiel

import java.util.ArrayList;
import java.util.HashSet;

class Main {
  public static void main(String[] args) {

    // create a set
    HashSet<String> vowels = new HashSet<>();
    vowels.add("a");
    vowels.add("e");
    vowels.add("i");

    // create an arraylist
    ArrayList<String> alphabets = new ArrayList<>();

    // add all elements of set to arraylist
    alphabets.addAll(vowels);
    System.out.println("ArrayList: " + alphabets);
  }
}

// Output: ArrayList: [a, e, i]

Um mehr zu erfahren, besuchen Sie Java ArrayList addAll().


2. Greifen Sie auf ArrayList-Elemente zu

Um auf ein Element aus der Arrayliste zuzugreifen, verwenden wir den get() Methode des ArrayList Klasse. Zum Beispiel

import java.util.ArrayList;

class Main {
  public static void main(String[] args) {
    ArrayList<String> animals = new ArrayList<>();

    // add elements in the arraylist
    animals.add("Cat");
    animals.add("Dog");
    animals.add("Cow");
    System.out.println("ArrayList: " + animals);

    // get the element from the arraylist
    String str = animals.get(1);
    System.out.print("Element at index 1: " + str);
  }
}

Ausgabe

ArrayList: [Cat, Dog, Cow]
Element at index 1: Dog

Im obigen Beispiel haben wir den get() verwendet Methode mit dem Parameter 1 . Hier gibt die Methode das Element an Index 1 zurück .

Um mehr zu erfahren, besuchen Sie Java ArrayList get().

Wir können auch auf Elemente des ArrayList zugreifen mit dem iterator() Methode. Um mehr zu erfahren, besuchen Sie Java ArrayList iterator().


3. ArrayList-Elemente ändern

Um Elemente der Arrayliste zu ändern, verwenden wir den set() Methode des ArrayList Klasse. Zum Beispiel

import java.util.ArrayList;

class Main {
  public static void main(String[] args) {
    ArrayList<String> languages = new ArrayList<>();

    // add elements in the array list
    languages.add("Java");
    languages.add("Kotlin");
    languages.add("C++");
    System.out.println("ArrayList: " + languages);

    // change the element of the array list
    languages.set(2, "JavaScript");
    System.out.println("Modified ArrayList: " + languages);
  }
}

Ausgabe

ArrayList: [Java, Kotlin, C++]
Modified ArrayList: [Java, Kotlin, JavaScript]

Im obigen Beispiel haben wir einen ArrayList erstellt benannte Sprachen . Beachten Sie die Zeile,

language.set(2, "JavaScript");

Hier der set() -Methode ändert das Element bei Index 2 zu JavaScript .

Um mehr zu erfahren, besuchen Sie Java ArrayList set().


4. ArrayList-Elemente entfernen

Um ein Element aus der Arrayliste zu entfernen, können wir den remove() verwenden Methode des ArrayList Klasse. Zum Beispiel

import java.util.ArrayList;

class Main {
  public static void main(String[] args) {
    ArrayList<String> animals = new ArrayList<>();

    // add elements in the array list
    animals.add("Dog");
    animals.add("Cat");
    animals.add("Horse");
    System.out.println("ArrayList: " + animals);

    // remove element from index 2
    String str = animals.remove(2);
    System.out.println("Updated ArrayList: " + animals);
    System.out.println("Removed Element: " + str);
  }
}

Ausgabe

ArrayList: [Dog, Cat, Horse]
Updated ArrayList: [Dog, Cat]
Removed Element: Horse

Hier der remove() Methode nimmt die Indexnummer als Parameter. Und entfernt das durch die Indexnummer angegebene Element .

Um mehr zu erfahren, besuchen Sie Java ArrayList remove().

Wir können auch alle Elemente auf einmal aus der Arrayliste entfernen. Um mehr zu erfahren, besuchen Sie

  • Java ArrayList removeAll()
  • Java ArrayList löschen()

Methoden der ArrayList-Klasse

Im vorherigen Abschnitt haben wir etwas über add() gelernt , get() , set() , und remove() Methode des ArrayList Klasse.

Neben diesen grundlegenden Methoden sind hier einige weitere ArrayList Methoden, die allgemein verwendet werden.

Methoden Beschreibungen
Größe() Gibt die Länge der Arrayliste zurück.
sortieren() Sortieren Sie die Arraylist-Elemente.
klonen() Erzeugt eine neue Arrayliste mit demselben Element, derselben Größe und derselben Kapazität.
enthält() Durchsucht die Arrayliste nach dem angegebenen Element und gibt ein boolesches Ergebnis zurück.
ensureCapacity() Gibt das Gesamtelement an, das die Arrayliste enthalten kann.
isEmpty() Überprüft, ob die Arrayliste leer ist.
indexOf() Sucht ein bestimmtes Element in einer Arrayliste und gibt den Index des Elements zurück.

Wenn Sie mehr über die verschiedenen Methoden von Arraylist erfahren möchten, besuchen Sie Java ArrayList-Methoden.


Eine ArrayList durchlaufen

Wir können die Java for-each-Schleife verwenden, um jedes Element der Arrayliste zu durchlaufen. Zum Beispiel

import java.util.ArrayList;

class Main {
  public static void main(String[] args) {

    // creating an array list
    ArrayList<String> animals = new ArrayList<>();
    animals.add("Cow");
    animals.add("Cat");
    animals.add("Dog");
    System.out.println("ArrayList: " + animals);

    // iterate using for-each loop
    System.out.println("Accessing individual elements:  ");

    for (String language : animals) {
      System.out.print(language);
      System.out.print(", ");
    }
  }
}

Ausgabe

ArrayList: [Cow, Cat, Dog]
Accessing individual elements:  
Cow, Cat, Dog,

Häufig gestellte Fragen

Was ist der Unterschied zwischen Java ArrayList und LinkedList?

Einige der Hauptunterschiede zwischen ArrayList und LinkedList in Java sind:

ArrayList VerknüpfteListe
Implementiert List Schnittstelle Implementiert List , Queue und Deque Schnittstellen.
Speichert einen einzelnen Wert. Speichert 3 Werte:Daten, vorherige und nächste Adresse
Bietet die Funktionalität eines in der Größe veränderbaren Arrays. Bietet die Funktionalität einer doppelt verknüpften Liste
Wie konvertiere ich eine ArrayList in ein Array?

Wir können den ArrayList konvertieren in ein Array mit dem toArray() Methode. Zum Beispiel

import java.util.ArrayList;

class Main {
  public static void main(String[] args) {
    ArrayList<String> languages = new ArrayList<>();

    // add elements in the array list
    languages.add("Java");
    languages.add("Python");
    languages.add("C++");
    System.out.println("ArrayList: " + languages);

    // create a new array of String type
    String[] arr = new String[languages.size()];

    // convert ArrayList into an array
    languages.toArray(arr);
    System.out.print("Array: ");

    // access elements of the array
    for (String item : arr) {
      System.out.print(item + ", ");
    }
  }
}

Ausgabe

ArrayList: [Java, Python, C++]
Array: Java, Python, C++, 

Im obigen Beispiel der toArray() -Methode konvertiert die Sprachen arraylist in ein Array und speichert es in arr . Um mehr zu erfahren, besuchen Sie Java ArrayList toArray().

Wie konvertiere ich ein Array in eine ArrayList?

Wir verwenden den asList() Methode des Arrays Klasse. Um asList() zu verwenden , müssen wir den java.util.Arrays importieren Paket zuerst. Zum Beispiel

import java.util.ArrayList;
import java.util.Arrays;

class Main {
  public static void main(String[] args) {

    // create an array of String type
    String[] arr = { "Java", "Python", "C++" };
    System.out.print("Array: ");

    // print array
    for (String str : arr) {
      System.out.print(str);
      System.out.print(" ");
    }

    // create an ArrayList from an array
    ArrayList<String> languages = new ArrayList<>(Arrays.asList(arr));
    System.out.println("\nArrayList: " + languages);
  }
}

Ausgabe

Array: Java Python C++        
ArrayList: [Java, Python, C++]

Im obigen Programm haben wir zuerst ein Array arr erstellt des String Typ. Beachten Sie den Ausdruck,

Arrays.asList(arr)

Hier der asList() -Methode konvertiert das Array in eine Arrayliste.

Wie erstellt und initialisiert man eine ArrayList in einer einzigen Zeile?

Wir verwenden den Arrays.asList() Methode zum Erstellen und Initialisieren einer Arrayliste in einer einzelnen Zeile. Zum Beispiel

import java.util.ArrayList;
import java.util.Arrays;

class Main {
  public static void main(String[] args) {

    // create and initialize ArrayList
    ArrayList<String> languages = new ArrayList<>(Arrays.asList("Java", "Python", "C"));
    System.out.println("ArrayList: " + languages);

  }
}

// Output: ArrayList: [Java, Python, C]
Wie konvertiere ich eine ArrayList in einen String?

Wir verwenden den toString() Methode des ArrayList Klasse, um eine Arrayliste in einen String umzuwandeln. Zum Beispiel

import java.util.ArrayList;

class Main {
  public static void main(String[] args) {
    ArrayList<String> languages = new ArrayList<>();

    // add elements in the ArrayList
    languages.add("Java");
    languages.add("Python");
    languages.add("Kotlin");
    System.out.println("ArrayList: " + languages);

    // convert ArrayList into a String
    String str = languages.toString();
    System.out.println("String: " + str);
  }
}

Ausgabe

ArrayList: [Java, Python, Kotlin]
String: [Java, Python, Kotlin]

Hier der toString() -Methode konvertiert die gesamte Arrayliste in eine einzelne Zeichenfolge. Um mehr zu erfahren, besuchen Sie Java ArrayList toString().

Wie erstelle ich eine Arrayliste mit der Listenschnittstelle?

Wir können auch eine Arrayliste mit der List-Schnittstelle erstellen. Das liegt daran, dass die ArrayList-Klasse die List-Schnittstelle implementiert. Sehen wir uns ein Beispiel an,

import java.util.ArrayList;
import java.util.List;

class Main {
  public static void main(String[] args) {

    // create arraylist using List
    List<String> languages = new ArrayList<>();
    languages.add("Java");
    languages.add("Python");
    languages.add("C");

    System.out.println("ArrayList: " + languages);
  }
}

// Output: ArrayList: [Java, Python, C]

Java

  1. Letztes Java-Schlüsselwort
  2. Java-Instanz des Operators
  3. Verschachtelte statische Java-Klasse
  4. Anonyme Java-Klasse
  5. Java-Singleton-Klasse
  6. Java-Reflexion
  7. Java-Vektor
  8. Java-Algorithmen
  9. Java ObjectOutputStream-Klasse
  10. Java-Generika