Microsoft Word кл программирование на Java 2020 Зорина docx


Класс java.util.LinkedList



Pdf көрінісі
бет57/65
Дата17.10.2023
өлшемі3,23 Mb.
#117230
түріРеферат
1   ...   53   54   55   56   57   58   59   60   ...   65
Байланысты:
Лекции

Класс java.util.LinkedList. 
Используется, если вы хотите пройти по списку и посмотреть / изменить 
элементы в списке, вы используете объект итератора для этого списка (так же, как с 
другими коллекциями, которые реализуют Iterable интерфейс; все они имеют метод 
iterator (), который возвращает итератор). 
7.3 Итераторы в Java 
Итератор имеет доступ к элементам некоторой коллекции и может работать с 
ней в определенном порядке. Методы интерфейса Iterator (над коллекцией или 
набором элементов типа Е): 
-
boolean hasNext() // 
говорит

что
существуют
ли
какие
-
либо
элементы
слева

которые
мы
можем
увидеть

-
E next() // 
возвращает
следующий
элемент

-
void remove() //
удаляет
текущий
элемент
из
коллекции

Цели изучения интерфейсов. 
При программировании на Java важно уметь использовать интерфейсы, 
поэтому нам необходимо их изучать. Для чего это нужно делать? Для того чтобы: 


123 
-
узнать, что входит в состав интерфейса List; 
-
чтобы понять, как написать массив на основе реализации интерфейса List; 
-
изучить разницу между одно-, двусвязными, и циклическими связанными 
структурами данных в виде списков; 
-
чтобы узнать, как реализовать интерфейс 
List
, используя связанный 
список; 
-
для того, чтобы понять, что такое интерфейс итератора. 
Интерфейс 
List
 и класс 
ArrayList.
 
Массив является индексируемой структурой: можно выбрать все элементы в 
произвольном порядке, используя значение индекса. К элементам можно получить 
последовательный доступ с помощью цикла, который увеличивает индекс. 
Вы не можете: 
-
увеличивать или уменьшать длину; 
-
добавить элемент в указанную позицию без перемещения других 
элементов, чтобы освободить место; 
-
удалить элемент в заданном положении без смещения других элементов, 
чтобы заполнить возникший пробел. 
В интерфейс 
List
включены следующие операции: 
-
поиск заданного элемента; 
-
добавление элемента в любой конец; 
-
удаление элемента с любого конца; 
-
обход структуры списка без использования индекса. 
Не все классы выполняют перечисленные операции с одинаковой степенью 
эффективности. Массив предоставляет возможность хранить данные примитивных 
типов, тогда как в списке из объектов типа класс хранятся ссылки на объекты (этому 
способствует Autoboxing). 
На рисунке 7.2 ниже приведена зависимость Java Collection. Красным здесь 
выделены интерфейсы, зеленым – абстрактные классы, а синим готовые реализации. 


124 
Рисунок 7.2 – Java Collection
ArrayList
- самая часто используемая коллекция. 
ArrayList
инкапсулирует в себе обычный массив, длина которого автоматически увеличивается 
при добавлении новых элементов. Так как 
ArrayList
использует массив, то время 
доступа к элементу по индексу минимально (в отличии от 
LinkedList
).
При удалении произвольного элемента из списка, все элементы, находящиеся 
«правее» смещаются на одну ячейку влево, при этом реальный размер массива (его 
емкость, capacity) не изменяется. Если при добавлении элемента, оказывается, что 
массив полностью заполнен, будет создан новый массив размером (n * 3) / 2 + 1, в 
него будут помещены все элементы из старого массива + новый, добавляемый 
элемент. 


Достарыңызбен бөлісу:
1   ...   53   54   55   56   57   58   59   60   ...   65




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет