[mw_shl_code=java,true]package 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 = новий <String>ArrayList();
list.add("a"); list.add("b"); list.add("c"); list.add("c"); Можна додавати дублікати даних
Метод обходу 1 for(<String>ітератор ітератора = list.iterator(); iterator.hasNext(); ){ String value = iterator.next();
System.out.println(value); }
Метод обходу 2 for(String value : list){ System.out.println(value); }
Метод обходу 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 — двонаправленими зв'язаними списками. b) При виконанні операцій вставки або видалення краще використовувати LinkedList. c) Під час операції пошуку краще використовувати ArrayList.
Простіше кажучи, це послідовне та ланцюгове зберігання в структурі даних
|