Daftar Tautan Java


Daftar Tautan Java

Pada bab sebelumnya, Anda telah mempelajari tentang ArrayListkelas. Kelasnya LinkedListhampir identik dengan ArrayList:

Contoh

// Import the LinkedList class
import java.util.LinkedList;

public class Main {
  public static void main(String[] args) {
    LinkedList<String> cars = new LinkedList<String>();
    cars.add("Volvo");
    cars.add("BMW");
    cars.add("Ford");
    cars.add("Mazda");
    System.out.println(cars);
  }
}


ArrayList vs. LinkedList

Kelas LinkedListadalah kumpulan yang dapat berisi banyak objek dengan tipe yang sama, seperti ArrayList.

Kelas LinkedListmemiliki semua metode yang sama dengan ArrayListkelas karena keduanya mengimplementasikan Listantarmuka. Ini berarti Anda dapat menambahkan item, mengubah item, menghapus item, dan menghapus daftar dengan cara yang sama.

Namun, sementara ArrayListkelas dan LinkedListkelas dapat digunakan dengan cara yang sama, mereka dibangun dengan sangat berbeda.

Cara kerja ArrayList

Kelas ArrayListmemiliki array reguler di dalamnya. Ketika sebuah elemen ditambahkan, itu ditempatkan ke dalam array. Jika array tidak cukup besar, array baru yang lebih besar dibuat untuk menggantikan yang lama dan yang lama dihapus.

Bagaimana LinkedList bekerja

Toko LinkedList-toko menyimpan barang-barangnya di "wadah". Daftar tersebut memiliki tautan ke penampung pertama dan setiap penampung memiliki tautan ke penampung berikutnya dalam daftar. Untuk menambahkan elemen ke daftar, elemen ditempatkan ke dalam wadah baru dan wadah itu ditautkan ke salah satu wadah lain dalam daftar.

Kapan Menggunakan

Gunakan an ArrayListuntuk menyimpan dan mengakses data, dan LinkedList untuk memanipulasi data.


Metode LinkedList

Untuk banyak kasus, ArrayListini lebih efisien karena biasanya memerlukan akses ke item acak dalam daftar, tetapi LinkedListmenyediakan beberapa metode untuk melakukan operasi tertentu dengan lebih efisien:

Method Description Try it
addFirst() Adds an item to the beginning of the list.
addLast() Add an item to the end of the list
removeFirst() Remove an item from the beginning of the list.
removeLast() Remove an item from the end of the list
getFirst() Get the item at the beginning of the list
getLast() Get the item at the end of the list