[mw_shl_code=java,true]package com.sort;
importál java.util.ArrayList; importál java.util.Iterator; importál java.util.list;
/** * A lista három áthaladási típusa * @author Tulajdonos
* */ public class ListTest {
public static void main(String[] args) {
List<String> list = új ArrayList<String>();
list.add("a"); list.add("b"); list.add("c"); list.add("c"); Duplikált adatok hozzáadhatók
Áthaladási módszer 1 for(Iterator<String> iterator = list.iterator(); iterator.hasNext(); ){ String érték = iterator.next();
System.out.println(érték); }
Áthaladási módszer 2 for(String érték : list){ System.out.println(érték); }
3-as áthaladási módszer for(int i=0; i<list.size(); i++){ System.out.println(list.get(i)); }
} } [/mw_shl_code]
A három áthaladás összehasonlító elemzése:
1. módszer áthaladás: Végrehajtás közben adat-zárolás történik, a teljesítmény kissé rosszabb lesz, és ha egy elemet szeretnél eltávolítani a ciklus során, csak az it.remove módszert hívhatod.
2. módszer Áthaladás: Az első típust belsőleg hívjuk
3. módszer: Áthaladás: Nem belső zárolva, ami a leghatékonyabb, de a többszálas műveletek írása során figyelembe kell venni az egyidejű műveletek problémáját
A List interfész két fő megvalósítása, az ArrayList és a LinkedList így áthaladható Az ArrayList és a LinkedList összehasonlító elemzése a) A ArrayList mögöttes rétege tömbökkel van megvalósítva, míg a LinkedList alatta lévő réteg kétirányú összekapcsolt listákkal. b) Bevezetés vagy törlés műveletek során jobb a LinkedListet használni. c) Keresési művelet során jobb a ArrayList használatát.
Őszintén szólva, ez az adatstruktúrában szekvenciális és láncos tárolás
|