Интерфейс на списъка на Java

В този урок ще научим за интерфейса 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класове в детайли в следващите уроци.

Интересни статии...