Unterschied zwischen ArrayList und LinkedList

ArrayList und LinkedList implementieren beide die List-Schnittstelle und behalten die Einfügungsreihenfolge bei. Beides sind nicht synchronisierte Klassen.

Es gibt jedoch viele Unterschiede zwischen den Klassen ArrayList und LinkedList, die unten angegeben sind.

AnordnungslisteVerlinkteListe
1) ArrayList verwendet intern ein dynamisches Array , um die Elemente zu speichern.LinkedList verwendet intern eine doppelt verknüpfte Liste , um die Elemente zu speichern.
2) Die Manipulation mit ArrayList ist langsam , da sie intern ein Array verwendet. Wenn ein Element aus dem Array entfernt wird, werden alle Bits im Speicher verschoben.Die Manipulation mit LinkedList ist schneller als ArrayList, da eine doppelt verknüpfte Liste verwendet wird, sodass im Speicher keine Bitverschiebung erforderlich ist.
3) Eine ArrayList-Klasse kann nur als Liste fungieren, weil sie nur List implementiert.Die LinkedList-Klasse kann sowohl als Liste als auch als Warteschlange fungieren, da sie List- und Deque-Schnittstellen implementiert.
4) ArrayList ist besser zum Speichern und Zugreifen auf Daten.LinkedList eignet sich besser zum Manipulieren von Daten.

Beispiel für ArrayList und LinkedList in Java

Sehen wir uns ein einfaches Beispiel an, in dem wir sowohl ArrayList als auch LinkedList verwenden.

  1.  java.util.*     importieren ;
  2. Klasse  TestArrayLinked{    
  3.  public static void  main(String args[]){      
  4.      
  5.   Liste<String> al= neue  ArrayList<String>(); // Arrayliste erstellen    
  6.   al.add( “Ravi” ); //Objekt in Arraylist hinzufügen    
  7.   al.add( “Vijay” );    
  8.   al.add( “Ravi” );    
  9.   al.add( “Ajay” );    
  10.     
  11.   Liste<String> al2= neue  LinkedList<String>(); // Linkliste erstellen    
  12.   al2.add( “James” ); // Objekt in Linkedlist hinzufügen    
  13.   al2.add( “Serena” );    
  14.   al2.add( “Swati” );    
  15.   al2.add( “Junaid” );    
  16.     
  17.   System.out.println( “arraylist: ” +al);  
  18.   System.out.println( “verknüpfte Liste: ” +al2);  
  19.  }    
  20. }    

Ausgabe:

Arrayliste: [Ravi,Vijay,Ravi,Ajay]
verlinkte Liste: [James,Serena,Swati,Junaid]

osky