Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 13604|Отговор: 0

[JavaSE] Преминаване на колекцията от списъци в Java и сравнителен анализ на два класа на имплементация

[Копирай линк]
Публикувано в 4.01.2015 г. 13:29:38 ч. | | |
[mw_shl_code=java,true]пакет com.sort;  
  
import java.util.ArrayList;  
import java.util.Iterator;  
import java.util.List;  
  
/**
* Три вида преминаване в списъка
* @author Собственик
*
*/  
публичен клас ListTest {  
  
    public static void main(String[] args) {  
         
        <String> List list = нов ArrayList<String>();  
         
        list.add("a");  
        list.add("b");  
        list.add("c");  
        list.add("c"); Могат да се добавят дублирани данни  
         
        Метод на преминаване 1  
        for(<String>итератор = list.iterator(); iterator.hasNext(); ){  
            Стойност на низ = iterator.next();  
              
            System.out.println(стойност);  
        }  
         
        Метод на преминаване 2  
        for(String value : list){  
            System.out.println(стойност);  
        }  
         
        Метод на преминаване 3  
        for(int i=0; i<list.size(); i++){  
            System.out.println(list.get(i));  
        }  
         
    }  
} [/mw_shl_code]


Сравнителен анализ на трите пътувания:

Преминаване по Метод 1:

По време на изпълнение ще се извършва заключване на данни, производителността ще бъде леко по-лоша, а ако искате да премахнете елемент по време на цикъла, можете да извикате само метода it.delete.   

Метод 2 Преминаване:

Извикай първия тип вътрешно

Метод 3: Преминаване:

Не е заключен вътрешно, което е най-ефективно, но при писане на многонишкови операции трябва да се вземе предвид проблемът с конкурентните операции

Двете основни реализации на интерфейса List, ArrayList и LinkedList, могат да се преминат по този начин

Сравнителен анализ на ArrayList срещу LinkedList
a) Основният слой на ArrayList е реализиран с масиви, а основният слой на LinkedList е реализиран с двупосочни свързани списъци.
б) При извършване на операции по вмъкване или изтриване е по-добре да се използва LinkedList.
в) При извършване на операция по търсене е по-добре да се използва ArrayList.


Направо казано, това е последователно и верижно съхранение в структурата на данните




Предишен:Използване на jstl таг &lt;c:if&gt;
Следващ:java:list和set集合的遍历
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com