Категории:

  • Программирование


  • Изобразительное искусство


  • Программирование встраиваемых систем


  • Компьютерная графика


  • WEB Разработка


  • Музыка


  • Инженерия


  • iVARIOUS


  • Mobil App


  • Java. Списки ArrayList и LinkedList

    ArrayList и LinkedList представляет собой отдельный класс , моделирующий работу массива , вернее сказать интерфейс как у массива но с более расширенными функциями записью/чтением данных и управлением памятью. Основная проблема массивов заключается в их статичности, невозможно изменить размер массива, добавить или удалить его элементы. Поэтому при проектирование приложений приходилось угадывать размер массивов, что приводило к нерациональному потреблению памяти. Все эти проблемы решает класс ArrayList. При его объявление отпадает надобность указывать размер ArrayList, а только тип хранимого содержимого:


    ArrayList <String> name = new ArrayList<String>();// объявление

    int n = name.size(); //количество элементов

    String str = name.get(3); // Чтение третьего элемента, эквивалент array[3];

    name.set(9, str); // Запись в девятый элемент

    name.add(str); // Добавит строку в конец списка

    name.add(9, s); // Добавит строку после 9 элемента

    name.add(0, s); // Добавит строку в начало списка

    name .remove(6);// Удаление 6-го элемента


    Единственное, что следует не путать:
    name.set(9, str) - записывает в уже существующий 9 элемент .
    name.add(9, str) - вставляет новый элемент, в результате чего увеличивается размер списка ArrayList.
    ArrayList <String> name = new ArrayList<String>();

    String a = "str-1";
    String b = "str-2";
    String c = "str-3";


    name.add(a);
    name.add(b);
    name.add(c);


    for(int i=0; i < name.size(); i++){
    System.out.println(name.get(i));
    }


    Подобный интерфейс имеет также и LinkedList.
    Конечно можно и самому придумать стандартными командами подобный интерфейс управления элементами и памятью, чтоб добится желаемого эффекта, но не стоит придумывать велосипед заново.

    Читайте больше в категории: Программирование

    2016-04-13 12:50:50



    Другие статьи:

    Maya. Сглаживание Smooth и по нормалям

    PHP. Строки. Переменные в строках

    Психология: как рождается музыка.

    Бронецький Замок. 3D реконструкція

    Android. Thread - потоки

    Maya. Карта рельефа Bump

    WinAPI. Фон для вывода Графиков функций.

    WinAPI. Button ( Кнопка ).

    Рисунок. Портрет

    PHP. База данных