Java gekoppelde lys


Java gekoppelde lys

ArrayListIn die vorige hoofstuk het jy van die klas geleer . Die LinkedListklas is amper identies aan die ArrayList:

Voorbeeld

// 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

Die LinkedListklas is 'n versameling wat baie voorwerpe van dieselfde tipe kan bevat, net soos die ArrayList.

Die LinkedListklas het almal dieselfde metodes as die ArrayListklas omdat hulle albei die Listkoppelvlak implementeer. Dit beteken dat jy items kan byvoeg, items verander, items kan verwyder en die lys op dieselfde manier kan uitvee.

Alhoewel die ArrayListklas en die LinkedListklas op dieselfde manier gebruik kan word, is hulle baie verskillend gebou.

Hoe die ArrayList werk

Die ArrayListklas het 'n gereelde skikking daarin. Wanneer 'n element bygevoeg word, word dit in die skikking geplaas. As die skikking nie groot genoeg is nie, word 'n nuwe, groter skikking geskep om die ou een te vervang en die ou een word verwyder.

Hoe die LinkedList werk

Die LinkedListstoor sy items in "houers." Die lys het 'n skakel na die eerste houer en elke houer het 'n skakel na die volgende houer in die lys. Om 'n element by die lys te voeg, word die element in 'n nuwe houer geplaas en daardie houer word aan een van die ander houers in die lys gekoppel.

Wanneer om te gebruik

Gebruik 'n ArrayListvir die stoor en toegang tot data, en LinkedList om data te manipuleer.


Gekoppelde lys metodes

Vir baie gevalle ArrayListis dit meer doeltreffend aangesien dit algemeen is om toegang tot ewekansige items in die lys te benodig, maar dit LinkedListbied verskeie metodes om sekere bewerkings meer doeltreffend uit te voer:

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