Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 14824|Antwort: 0

[Kommunikation] java:list和set集合的遍历

[Link kopieren]
Veröffentlicht am 04.01.2015 13:30:48 | | |

Es gibt drei Möglichkeiten, eine Liste zu durchqueren   
   
   Listenliste<A> = neue ArrayList<A>();   
   list.add(neues A());   
   list.add(neues A());   
   ...   
   
  Der erste Typ:   
   for(Iterator<A> it = list.iterator();    it.hasNext();    )    {   
       ....   
   }   
   So läuft es in einem Kreislauf
Gleichzeitig kannst du, wenn du ein Element im Vergnügensprozess entfernen möchtest, nur die it.remove Methode aufrufen, du kannst die list.remove Methode nicht verwenden, sonst gibt es einen Fehler beim gleichzeitigen Zugriff.   
Aber die Kompatibilität ist am besten, geeignet für die Collection-Sammlung
   
   Der zweite Typ:   
   for(A a : list) {   
       .....   
   }   
  Die für jede Methode ist immer noch ein Iterator, die erste wird intern genannt, und die Suppe wird nicht verändert, und es gibt weitere Einschränkungen dieser zirkulären Methode, weshalb es nicht empfohlen wird, sie zu verwenden   
  Es kann nur über JK1.5 mit schlechter Kompatibilität verwendet werden. Das Set ist am besten, um dieses zu verwenden.

   Der dritte Typ:   
   for(int i=0;    i<list.size();    i++) {   
       A a = list.get(i);   
       ...   
   }   
  für Schleife funktioniert das Durchqueren der Inhalte einer List-Sammlung nur für List, da List eine geordnete Sammlung ist
, das Interne ist nicht gesperrt, die höchste Effizienz, aber beim Schreiben von Multithreading sollte das Problem gleichzeitiger Operationen berücksichtigt werden!

Das Durchqueren einer Set-Sammlung ist wie eine List, aber du kannst keine for-Schleife verwenden, um durch eine Set-Sammlung zu iterieren, weil es in der Set-Sammlung keine get()-Methode gibt.
  Aber es kann mit Verbesserungen in Schleifen gebracht werden
  Durchqueren Sie die Mengensammlung
  Set<String> Set = new HashSet<String>();
  set.add("qqq");
  set.add("www");
  set.add("eee");
  set.add("rrr");
  
  for(String s : set){
   System.out.println("set="+s);
  }






Vorhergehend:Durchlauf der Listensammlung in Java und vergleichende Analyse von zwei Implementierungsklassen
Nächster:Er ist ein älterer Bruder, er ist ein Loli-Mädchen, warum hat er ihr einen Becher gegeben?
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com