Unterschiede zwischen List und Arraylist in Java

Zeeshan Afridi 12 Oktober 2023
  1. Sammlungsrahmen
  2. Liste in Java
  3. ArrayList in Java
  4. Unterschiede zwischen List und ArrayList in Java
Unterschiede zwischen List und Arraylist in Java

ArrayList und List sind Mitglieder des Collection-Frameworks in Java, wobei ArrayList eine Klasse und List eine Schnittstelle ist. Mit Hilfe des Collection-Frameworks können wir verschiedene Operationen wie Löschen, Einfügen, Sortieren, Manipulieren und Suchen in einer Gruppe von Objekten durchführen.

Sammlungsrahmen

Das Collection-Framework in Java verfügt über die folgenden Schnittstellen und Klassen:

Schnittstelle:

  1. Einstellen
  2. Warteschlange
  3. Liste
  4. Deque

Klassen:

  1. ArrayListe
  2. Vektor
  3. Verknüpfte Liste
  4. HashSet
  5. BaumSet
  6. LinkedHashSet
  7. Prioritätswarteschlange

Das Collection-Framework hat verschiedene Klassen und Schnittstellen, aber dieser Artikel konzentriert sich nur auf List und ArrayList, also lassen Sie uns beide anhand eines Beispiels besprechen.

Liste in Java

In Java gehört List zum Collection-Framework. Es ist eine geordnete Gruppe von Objekten, die als eine Einheit dargestellt werden.

Wir können heterogene Datentypen in einer Liste speichern und auf die Daten basierend auf den Indizes der Elemente der Liste zugreifen. Sie können verschiedene Operationen wie Löschen, Einfügen, Aktualisieren und Suchen in einer Liste in Java ausführen.

Die Schnittstelle List befindet sich im Paket java.util. Es erbt die Collection-Schnittstelle.

Es implementiert die Klassen LinkedList, Stack, ArrayList und Vector. Wir können eine Liste sowohl rückwärts als auch vorwärts durchlaufen.

package articlecodesinjava;

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

class TestingList {
  public static void main(String[] args) {
    List<String> list = new ArrayList<>(); // List object
    list.add("Successfully created a list in Java"); // adding a string to the List
    System.out.println(list);
  }
}

Ausgang:

[Successfully created a list in Java]    //The output is in List form

Eingebaute Listenmethoden in Java

In Java hat eine Liste mehrere spezifische Methoden. Diese werden für verschiedene Zwecke verwendet; Einige der beliebtesten und häufigsten sind die folgenden:

package articlecodesinjava;

import java.util.*;

class TestingList {
 public static void main(String[] args) {
   List<Object> list = new ArrayList<>();

   list.add(1); // Adding values in list
   list.add(2);
   System.out.println("List after adding values " + list);

   list.removeAll(list); // return and empty list, all values are erased
   System.out.println("List after the removeAll method " + list);

   list.add("3"); // Adding values in list
   list.add("4");
   System.out.println("New list " + list);

   System.out.println("The size of the List " + list.size());

   System.out.println("Return a value from the list a 1 position " + list.get(1));
   System.out.println("Removing value at position 1 = " + list.remove(1));
   System.out.println("Final list" + list);
 }
}

Ausgang:

List after adding values [1, 2]
List after the removeAll method []
New list [3, 4]
The size of the List 2
Return a value from the list a 1 position 4
Removing value at position 1 = 4
Final list[3]

Zunächst haben wir das Paket java.util.* importiert, um im obigen Programm auf List und ArrayList zugreifen zu können. Dann haben wir eine Liste erstellt und mit dem Objekt der Liste zuerst einige Werte mit add() gefüllt, als nächstes haben wir alle Daten aus der Liste mit removeAll() entfernt, es wurde eine leere Liste zurückgegeben.

Außerdem haben wir der Liste wieder einige Werte hinzugefügt, um einige andere Operationen auf der Liste auszuführen. Wir haben die Größe der Liste mit size() ermittelt und mit get(1) einen Wert an Position/Indexnummer 1 angezeigt, und am Ende haben wir mit remove() einen Wert an Indexnummer 1 entfernt. 1).

Die Liste enthält tonnenweise eingebaute Methoden. Sie können mehr auf der offiziellen Seite von Java lesen.

ArrayList in Java

In Java ist ArrayList eine erweiterte Version des traditionellen Arrays. Das herkömmliche Array hat eine feste Größe, sodass es nicht möglich war, die Größe des Arrays zu vergrößern oder zu verkleinern.

Daher bietet das Collection-Framework ein dynamisches Array namens ArrayList. Die Klasse ArrayList ist ein dynamisches Array, das seine Größe beim Hinzufügen und Entfernen von Elementen aus der Liste erweitern und verkleinern kann.

Es erbt die Klasse AbstractList und implementiert die Schnittstelle List, um alle Methoden der List-Schnittstelle zu verwenden. Auf die Elemente kann über die Indizes der Elemente der Liste zugegriffen werden.

ArrayList unterstützt keine primitiven Datentypen wie char, int, float, etc. Aber wir verwenden die Wrapper-Klasse für solche Fälle.

package articlecodesinjava;

import java.util.ArrayList;

class TestingArrayList {
  public static void main(String[] args) {
    ArrayList<String> arrayList = new ArrayList<>(); // ArrayList object
    arrayList.add("Successfully created an arrayList in Java"); // adding a string to the ArrayList
    System.out.println(arrayList);
  }
}

Ausgang:

[Successfully created an arrayList in Java]

Eingebaute ArrayList-Methoden in Java

ArrayList erweitert AbstractList, das List implementiert, sodass wir alle Methoden von List in ArrayList verwenden können.

Siehe das Beispiel unten. Wir werden alle oben genannten Programme mit denselben Methoden in ArrayList verwenden.

Codebeispiel:

package articlecodesinjava;

import java.util.*;

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

    arrayList.add(1); // Adding values in ArrayList
    arrayList.add(2);
    System.out.println("ArrayList after adding values " + arrayList);

    arrayList.removeAll(arrayList); // return and empty ArrayList, all values are erased
    System.out.println("ArrayList after the removeAll method " + arrayList);

    arrayList.add("3"); // Adding values in ArrayList
    arrayList.add("4");
    arrayList.add(0, 5);

    System.out.println("New ArrayList " + arrayList);

    System.out.println("The size of the ArrayList " + arrayList.size());

    System.out.println("Return a value from the ArrayList at 1 position " + arrayList.get(1));

    System.out.println("Removing value at position 1 = " + arrayList.remove(1));
    System.out.println("Final ArrayList" + arrayList);
  }
}

Ausgang:

ArrayList after adding values [1, 2]
ArrayList after the removeAll method []
New ArrayList [5, 3, 4]
The size of the ArrayList 3
Return a value from the ArrayList at 1 position 3
Removing value at position 1 = 3
Final ArrayList[5, 4]

Unterschiede zwischen List und ArrayList in Java

Im Folgenden sind einige der wichtigsten Unterschiede zwischen der List und der ArrayList in Java aufgeführt:

Aufführen

  1. Liste ist eine Schnittstelle.
  2. Die List-Schnittstelle erweitert das Collection-Framework.
  3. Es kann nicht instanziiert werden.
  4. Es erstellt eine Liste von Objekten.
  5. Listen sind schneller bei der Manipulation von Objekten.

Anordnungsliste

  1. ArrayList ist eine Standard-Collection-Klasse.
  2. ArrayList erweitert AbstractList, das List-Schnittstellen implementiert.
  3. Es kann instanziiert werden.
  4. Es erstellt ein Array von Objekten.
  5. ArrayLists bearbeiten Objekte nicht so schnell wie List.
Zeeshan Afridi avatar Zeeshan Afridi avatar

Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.

LinkedIn

Verwandter Artikel - Java List

Verwandter Artikel - Java ArrayList