В този урок ще научим за интерфейса List в Java и неговите методи.
В Java Listинтерфейсът е подредена колекция, която ни позволява да съхраняваме и да имаме достъп до елементи последователно. Той разширява Collectionинтерфейса.
Класове, които прилагат списък
Тъй като Listе интерфейс, не можем да създаваме обекти от него.
За да използваме функционалностите на Listинтерфейса, можем да използваме следните класове:
- ArrayList
- LinkedList
- Вектор
- Стек

Тези класове са дефинирани в рамката Collections и реализират Listинтерфейса.
Как да използвам Списък?
В Java трябва да импортираме java.util.Listпакет, за да го използваме List.
// ArrayList implementation of List List list1 = new ArrayList(); // LinkedList implementation of List List list2 = new LinkedList();
Тук създадохме обекти list1 и list2 от класове ArrayListи LinkedList. Тези обекти могат да използват функционалностите на Listинтерфейса.
Методи на списъка
В Listинтерфейса включва всички методи на Collectionинтерфейса. Това е, защото Collectionе супер интерфейс на List.
Някои от често използваните методи на Collectionинтерфейса, които също се предлагат в Listинтерфейса, са:
add()- добавя елемент към списъкaddAll()- добавя всички елементи от един списък към другget()- помага за произволен достъп до елементи от списъциiterator()- връща обект на итератор, който може да се използва за последователен достъп до елементи на списъциset()- променя елементи на списъциremove()- премахва елемент от списъкаremoveAll()- премахва всички елементи от списъкаclear()- премахва всички елементи от списъка (по-ефективно отremoveAll())size()- връща дължината на списъцитеtoArray()- преобразува списък в масивcontains()- връща,trueако списъкът съдържа посочен елемент
Внедряване на списъчния интерфейс
1. Внедряване на клас ArrayList
import java.util.List; import java.util.ArrayList; class Main ( public static void main(String() args) ( // Creating list using the ArrayList class List numbers = new ArrayList(); // Add elements to the list numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("List: " + numbers); // Access element from the list int number = numbers.get(2); System.out.println("Accessed Element: " + number); // Remove element from the list int removedNumber = numbers.remove(1); System.out.println("Removed Element: " + removedNumber); ) )
Изход
Списък: (1, 2, 3) Достъпен елемент: 3 Премахнат елемент: 2
За да научите повече за ArrayList, посетете Java ArrayList.
2. Внедряване на класа LinkedList
import java.util.List; import java.util.LinkedList; class Main ( public static void main(String() args) ( // Creating list using the LinkedList class List numbers = new LinkedList(); // Add elements to the list numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("List: " + numbers); // Access element from the list int number = numbers.get(2); System.out.println("Accessed Element: " + number); // Using the indexOf() method int index = numbers.indexOf(2); System.out.println("Position of 3 is " + index); // Remove element from the list int removedNumber = numbers.remove(1); System.out.println("Removed Element: " + removedNumber); ) )
Изход
Списък: (1, 2, 3) Достъпен елемент: 3 Позицията на 3 е 1 Премахнат елемент: 2
За да научите повече за LinkedList, посетете Java LinkedList.
Java List срещу Set
И Listинтерфейсът, и Setинтерфейсът наследяват Collectionинтерфейса. Между тях обаче има известна разлика.
- Списъците могат да включват дублиращи се елементи. Наборите обаче не могат да имат дублиращи се елементи.
- Елементите в списъците се съхраняват в някакъв ред. Елементите в множествата обаче се съхраняват в групи като множества в математиката.
Сега, когато знаем какво Listе, ще видим неговите внедрения в ArrayListи LinkedListкласове в детайли в следващите уроци.








