Heim  >  Artikel  >  Java  >  Detaillierte Erläuterung der Listensammlung und ihrer Durchquerung in Java

Detaillierte Erläuterung der Listensammlung und ihrer Durchquerung in Java

高洛峰
高洛峰Original
2017-01-22 15:35:261887Durchsuche

1. Zunächst einmal sind List Collection-Vererbung und Collection

① Sammlung (das Sammlungsframework erschien in der JDK1.2-Version)

② Liste: Sie ist geordnet und die Elemente können wiederholt werden. Es wird davon ausgegangen, dass das Sammlungssystem über einen Index verfügt.

Häufig werden die Klassen ArrayList und LinkedList verwendet, die diese Schnittstelle implementieren

③ Arraylist: Die zugrunde liegende Datenstruktur verwendet eine Array-Struktur.

Merkmale: Die Abfragegeschwindigkeit ist hoch , aber Hinzufügungen und Löschungen sind etwas langsamer. Threads sind nicht synchronisiert

LinkedList: Die unterste Ebene verwendet eine verknüpfte Listendatenstruktur.

Funktionen: Die Geschwindigkeit des Hinzufügens und Löschens ist sehr hoch und die Abfrage ist etwas langsamer.

Vektor: (Erscheint in der JDK1.0-Version) Die unterste Ebene ist eine Array-Datenstruktur und Thread-Synchronisierung. Ersetzt durch ArrayList. (Nicht mehr erforderlich)

2. Zwei Möglichkeiten zum Durchlaufen der Liste:

public class Demo {
  public static void main(String[] args) {
    ArrayList<String> list = new ArrayList<String>();
    list.add("A");
    list.add("B");
    list.add("C");
     
    System.out.println("........第一种遍历方式:for遍历......");
    for (Object li : list) {
      System.out.println(li);
    }
     
    System.out.println("........第二种遍历方式:ListIterator迭代遍历......");
    ListIterator<String> it = list.listIterator();
    while (it.hasNext()) {
      Object obj = it.next();
      System.out.println(obj);
    }
  }
}

Rendering:

Detaillierte Erläuterung der Listensammlung und ihrer Durchquerung in Java

3. Verwenden Sie LinkList, um eine Stapel- oder Warteschlangendatenstruktur zu simulieren. Das heißt: Stapel: Zuerst rein, zuletzt raus; Warteschlange: Zuerst rein, zuerst raus

class Duilie{
  private LinkedList<Object> link;
  Duilie(){
    link = new LinkedList<Object>();
  }
  public void myAdd(Object obj){
    link.addFirst(obj);
   }
  public Object myGet(){
    return link.removeLast();//先进先出---若要改成先进后出,将removelast()改成removeFirst()
  }
  public boolean isNull(){
    return link.isEmpty();
  }
}
public class Demo2 {
  public static void main(String[] args) {
    Duilie dl = new Duilie();
    dl.myAdd("java01");
    dl.myAdd("java02");
    dl.myAdd("java03");
    dl.myAdd("java04");
    while(!dl.isNull()){
      System.out.println(dl.myGet());
    }
  }
}

Rendering:

Detaillierte Erläuterung der Listensammlung und ihrer Durchquerung in Java

Das Obige ist „First In, First Out“. Wenn Sie es in „First In, Last Out“ ändern möchten, ändern Sie es einfach entsprechend dem, was im Code geschrieben steht.

Das Obige ist das Ganze Inhalt dieses Artikels, ich hoffe, er gefällt euch allen.

Ausführlichere Erläuterungen zu Listensammlungen und deren Durchquerung in Java finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn