Heim  >  Artikel  >  Java  >  So verwenden Sie die Java List-Schnittstelle, die Iterator-Schnittstelle und die foreach-Schleife

So verwenden Sie die Java List-Schnittstelle, die Iterator-Schnittstelle und die foreach-Schleife

王林
王林nach vorne
2023-04-20 17:31:081542Durchsuche

List-Schnittstelle

Die List-Schnittstelle erbt die Collection-Schnittstelle und gehört zu einer einspaltigen Sammlung. In der List-Sammlung sind alle Elemente linear gespeichert und der Zugriff auf die Elemente in der Sammlung erfolgt über Indizes im Programm geben die Elemente nacheinander an, d. h. die Reihenfolge, in der die Elemente gespeichert werden, stimmt mit der Reihenfolge überein, in der sie abgerufen werden.

ArrayList-Sammlung

ArrayList ist eine Implementierungsklasse der List-Schnittstelle, die ein Array-Objekt variabler Länge in ArrayList kapselt.

 package 集合类;
 import java.util.ArrayList;
 import java.util.Arrays;
 public class FengZhuanglei {
     public static void main(String[] args) {
         ArrayList list=new ArrayList();
         list.add("stu1");
         list.add("stu2");
         list.add("stu3");
         list.add("stu4");
         System.out.println("集合的长度:"+list.size());
         System.out.println("第二个元素是:"+list.get(1));
     }
 }

Laufende Ergebnisse

So verwenden Sie die Java List-Schnittstelle, die Iterator-Schnittstelle und die foreach-Schleife

Aus den laufenden Ergebnissen ist ersichtlich, dass ArrayList und Array-Index beide bei 0 beginnen. Da die unterste Ebene der ArrayList-Sammlung ein Array zum Speichern von Elementen verwendet, wenn Elemente an bestimmten Positionen hinzugefügt oder gelöscht werden , , führt zur Erstellung eines neuen Arrays, was relativ ineffizient ist und daher nicht für eine große Anzahl von Hinzufügungen und Löschungen geeignet ist. Elemente können jedoch durch Indizierung gefunden werden, was auch die Effizienz beim Auffinden von Elementen erhöht.

LinkedList-Sammlung

Um das Problem der geringen Effizienz beim Hinzufügen und Löschen von Elementen in der ArrayList-Sammlung zu lösen, wird die LinkList-Sammlung eingeführt. Innerhalb der LinkList-Sammlung wird eine bidirektionale zirkuläre verknüpfte Liste verwaltet Die Liste wird durch Referenz gespeichert. Beim Einfügen eines neuen Elements müssen Sie nur die Referenzbeziehung zwischen Elementen ändern, was die Effizienz beim Hinzufügen und Löschen von Elementen erhöhen kann.

 package 集合类;
 import java.util.LinkedList;
 public class LianBiao {
     public static void main(String[] args) {
         LinkedList link =new LinkedList();
         link.add("stu1");
         link.add("stu2");
         link.add("stu3");
         link.add("stu4");
         //打印集合中的元素
         System.out.println(link.toString());
         //在集合中插入元素
         link.add(3,"Student");
         //在集合的第一个位置插入元素
         link.addFirst("李龙");
         System.out.println(link);
         //取出集合中的第一个元素
         System.out.println(link.getFirst());
         //删除集合中的元素
         link.remove(3);
         //删除集合中的第一个元素
         link.removeFirst();
         System.out.println(link);
     }
 }

Laufergebnisse

So verwenden Sie die Java List-Schnittstelle, die Iterator-Schnittstelle und die foreach-Schleife

Iterator-Schnittstelle

Iterator wird hauptsächlich zum Durchlaufen der Elemente in der Sammlung verwendet. Iterator wird auch als Iterator bezeichnet.

 package 集合类;
 import java.util.ArrayList;
 import java.util.Iterator;
 public class DieDai {
     public static void main(String[] args) {
         ArrayList list=new ArrayList();
         list.add("好好学习");
         list.add("做一个优秀的共产主义接班人");
         list.add("为人民服务");
         list.add("做一个对社会有用的人");
         Iterator it= list.iterator();
         //判断ArrayList是否存在下一个元素
         while(it.hasNext()){
             Object obj=it.next();
             System.out.println(obj);
         }
     }
 }

Laufergebnisse

So verwenden Sie die Java List-Schnittstelle, die Iterator-Schnittstelle und die foreach-Schleife

Verwenden Sie beim Durchlaufen des Iterators zunächst die Methode hasNext(), um festzustellen, ob noch das nächste Element in der Sammlung vorhanden ist. Verwenden Sie dazu die Methode next() Entfernen Sie das Element.

foreach-Schleife

Erweitern Sie die for-Schleife. Die foreach-Schleife muss weder die Länge der Schleife ermitteln, noch muss sie über Indizes auf die Elemente in der Schleife zugreifen.

 package 集合类;
 import java.util.ArrayList;
 public class FE {
     public static void main(String[] args) {
         ArrayList list=new ArrayList();
         list.add("hello");
         list.add("world");
         for(Object obj: list){
             System.out.println(obj);
         }
     }
 }

Laufergebnisse

So verwenden Sie die Java List-Schnittstelle, die Iterator-Schnittstelle und die foreach-Schleife

Es ist ersichtlich, dass die erweiterte for-Schleife beim Durchlaufen der Sammlung sehr praktisch ist. Es gibt keine Schleifenbedingung und keine Iteration. Die Anzahl der Schleifen wird durch die Anzahl der Elemente bestimmt In der Schleife merkt sich die erweiterte for-Schleife jedes Mal die Elemente der aktuellen Schleife über Variablen und gibt so die Elemente in der Sammlung separat aus.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie die Java List-Schnittstelle, die Iterator-Schnittstelle und die foreach-Schleife. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen