Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 13604|Válasz: 0

[JavaSE] A List gyűjtemény áthaladása java-ban és két implementációs osztály összehasonlító elemzése

[Linket másol]
Közzétéve 2015. 01. 04. 13:29:38 | | |
[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




Előző:A jstl tag &lt;c:if&gt;
Következő:java:list和set集合的遍历
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com