Listă în Java oferă facilitatea de a menține colectare comandată . Conține metode bazate pe index pentru a insera, actualiza, șterge și căuta elemente. Poate avea și elemente duplicate. De asemenea, putem stoca elementele nule din listă.
Interfața Listă se găsește înjava.utilpachet și moștenește interfața Collection. Este o fabrică de interfață ListIterator. Prin ListIterator, putem repeta lista în direcții înainte și înapoi. Clasele de implementare ale interfeței List suntArrayList,LinkedList, Stivă și Vector. ArrayList și LinkedList sunt utilizate pe scară largă în programarea Java. Clasa Vector este depreciată din Java 5.
Declarație List Interface
public interface List extends Collection
Metode de listă Java
Metodă | Descriere | |
---|---|---|
void add (index int, element E) | Este folosit pentru a insera elementul specificat la poziția specificată într-o listă. | |
adăugare booleană (E e) | Este folosit pentru a adăuga elementul specificat la sfârșitul unei liste. | |
boolean addAll(Colecția c) | Este folosit pentru a adăuga toate elementele din colecția specificată la sfârșitul unei liste. | |
boolean addAll(index int, Colecția c) | Este folosit pentru a adăuga toate elementele din colecția specificată, începând de la poziția specificată a listei. | |
void clear() | Este folosit pentru a elimina toate elementele din această listă. | |
boolean este egal(obiect o) | Este folosit pentru a compara obiectul specificat cu elementele unei liste. | |
int hashcode() | Este folosit pentru a returna valoarea codului hash pentru o listă. | |
E get(index int) | Este folosit pentru a prelua elementul din poziția particulară a listei. | |
boolean este gol () | Returnează adevărat dacă lista este goală, în caz contrar, fals. | |
int lastIndexOf(Obiect o) | Este folosit pentru a returna indexul din această listă a ultimei apariții a elementului specificat, sau -1 dacă lista nu conține acest element. | |
Object[] toArray() | Este folosit pentru a returna o matrice care contine toate elementele din aceasta lista in ordinea corecta. | |
T[] toArray(T[] a) | Este folosit pentru a returna o matrice care contine toate elementele din aceasta lista in ordinea corecta. | |
boolean conține (Obiect o) | Returnează true dacă lista conține elementul specificat | |
boolean conțineToate(Colecția c) | Returnează true dacă lista conține tot elementul specificat | |
int indexOf(Obiect o) | Este folosit pentru a returna indexul din această listă a primei apariții a elementului specificat, sau -1 dacă Lista nu conține acest element. | |
E elimina (index int) | Este folosit pentru a elimina elementul prezent la poziția specificată în listă. | |
Eliminare booleană (Obiect o) | Este folosit pentru a elimina prima apariție a elementului specificat. | |
boolean removeAll(Colecția c) | Este folosit pentru a elimina toate elementele din listă. | |
void replaceAll (operator UnaryOperator) | Este folosit pentru a înlocui toate elementele din listă cu elementul specificat. | |
void retainAll(Colecția c) | Este folosit pentru a reține toate elementele din listă care sunt prezente în colecția specificată. | |
E set (index int, element E) | Este folosit pentru a înlocui elementul specificat în listă, prezent la poziția specificată. | |
sortare nulă (comparator c) | Este folosit pentru a sorta elementele listei pe baza comparatorului specificat. | |
Spliterator spliterator() | Este folosit pentru a crea un spliterator peste elementele dintr-o listă. | |
List subList(int fromIndex, int toIndex) | Este folosit pentru a prelua toate elementele care se află în intervalul dat. | |
dimensiune int() | Este folosit pentru a returna numărul de elemente prezente în listă. |
Lista Java vs ArrayList
List este o interfață, în timp ce ArrayList este clasa de implementare a List.
Cum se creează o listă
Clasele ArrayList și LinkedList oferă implementarea interfeței List. Să vedem exemplele pentru a crea Lista:
//Creating a List of type String using ArrayList List list=new ArrayList(); //Creating a List of type Integer using ArrayList List list=new ArrayList(); //Creating a List of type Book using ArrayList List list=new ArrayList(); //Creating a List of type String using LinkedList List list=new LinkedList();
Pe scurt, puteți crea Lista de orice tip. Clasele ArrayList și LinkedList sunt folosite pentru a specifica tipul. Aici, T indică tipul.
Exemplu de listă Java
Să vedem un exemplu simplu de Listă în care folosim clasa ArrayList ca implementare.
import java.util.*; public class ListExample1{ public static void main(String args[]){ //Creating a List List list=new ArrayList(); //Adding elements in the List list.add('Mango'); list.add('Apple'); list.add('Banana'); list.add('Grapes'); //Iterating the List element using for-each loop for(String fruit:list) System.out.println(fruit); } }Testează-l acum
Ieșire:
Mango Apple Banana Grapes
Cum se convertesc Array în Listă
Putem converti matricea în listă prin parcurgerea matricei și adăugând elementul în listă unul câte unul folosind metoda list.add(). Să vedem un exemplu simplu pentru a converti elementele matricei în Listă.
import java.util.*; public class ArrayToListExample{ public static void main(String args[]){ //Creating Array String[] array={'Java','Python','PHP','C++'}; System.out.println('Printing Array: '+Arrays.toString(array)); //Converting Array to List List list=new ArrayList(); for(String lang:array){ list.add(lang); } System.out.println('Printing List: '+list); } }Testează-l acum
Ieșire:
Printing Array: [Java, Python, PHP, C++] Printing List: [Java, Python, PHP, C++]
Cum se transformă List în Array
Putem converti Lista în Array apelând metoda list.toArray(). Să vedem un exemplu simplu pentru a converti elementele listei în matrice.
alter add coloana oracol
import java.util.*; public class ListToArrayExample{ public static void main(String args[]){ List fruitList = new ArrayList(); fruitList.add('Mango'); fruitList.add('Banana'); fruitList.add('Apple'); fruitList.add('Strawberry'); //Converting ArrayList to Array String[] array = fruitList.toArray(new String[fruitList.size()]); System.out.println('Printing Array: '+Arrays.toString(array)); System.out.println('Printing List: '+fruitList); } }Testează-l acum
Ieșire:
Printing Array: [Mango, Banana, Apple, Strawberry] Printing List: [Mango, Banana, Apple, Strawberry]
Obțineți și setați elementul în listă
The metoda get(). returnează elementul la indexul dat, în timp ce metoda set(). schimbă sau înlocuiește elementul.
import java.util.*; public class ListExample2{ public static void main(String args[]){ //Creating a List List list=new ArrayList(); //Adding elements in the List list.add('Mango'); list.add('Apple'); list.add('Banana'); list.add('Grapes'); //accessing the element System.out.println('Returning element: '+list.get(1));//it will return the 2nd element, because index starts from 0 //changing the element list.set(1,'Dates'); //Iterating the List element using for-each loop for(String fruit:list) System.out.println(fruit); } }Testează-l acum
Ieșire:
Returning element: Apple Mango Dates Banana Grapes
Cum se sortează lista
Există diferite moduri de a sorta Lista, aici vom folosi metoda Collections.sort() pentru a sorta elementul listă. The java.util pachetul oferă o clasă de utilitate Colecții care are metoda statică sort(). Folosind Collections.sort() metoda, putem sorta cu ușurință orice Listă.
import java.util.*; class SortArrayList{ public static void main(String args[]){ //Creating a list of fruits List list1=new ArrayList(); list1.add('Mango'); list1.add('Apple'); list1.add('Banana'); list1.add('Grapes'); //Sorting the list Collections.sort(list1); //Traversing list through the for-each loop for(String fruit:list1) System.out.println(fruit); System.out.println('Sorting numbers...'); //Creating a list of numbers List list2=new ArrayList(); list2.add(21); list2.add(11); list2.add(51); list2.add(1); //Sorting the list Collections.sort(list2); //Traversing list through the for-each loop for(Integer number:list2) System.out.println(number); } }
Ieșire:
este grasime proteica
Apple Banana Grapes Mango Sorting numbers... 1 11 21 51
Interfață Java ListIterator
Interfața ListIterator este folosită pentru a traversa elementul într-o direcție înapoi și înainte.
Declarație ListIterator Interfață
public interface ListIterator extends Iterator
Metode ale interfeței Java ListIterator:
Metodă | Descriere |
---|---|
adaugă nulă (E e) | Această metodă inserează elementul specificat în listă. |
boolean areNext() | Această metodă returnează true dacă iteratorul de listă are mai multe elemente în timp ce parcurge lista în direcția înainte. |
E următorul() | Această metodă returnează următorul element din listă și avansează poziția cursorului. |
int nextIndex() | Această metodă returnează indexul elementului care ar fi returnat de un apel ulterior la next() |
boolean arePrevious() | Această metodă returnează true dacă acest iterator de listă are mai multe elemente în timp ce parcurge lista în direcția inversă. |
E anterior() | Această metodă returnează elementul anterior din listă și mută poziția cursorului înapoi. |
E precedentIndex() | Această metodă returnează indexul elementului care ar fi returnat printr-un apel ulterior la previous(). |
void remove() | Această metodă elimină ultimul element din listă care a fost returnat de metodele next() sau previous(). |
set gol (E e) | Această metodă înlocuiește ultimul element returnat de metodele next() sau previous() cu elementul specificat. |
Exemplu de interfață ListIterator
import java.util.*; public class ListIteratorExample1{ public static void main(String args[]){ List al=new ArrayList(); al.add('Amit'); al.add('Vijay'); al.add('Kumar'); al.add(1,'Sachin'); ListIterator itr=al.listIterator(); System.out.println('Traversing elements in forward direction'); while(itr.hasNext()){ System.out.println('index:'+itr.nextIndex()+' value:'+itr.next()); } System.out.println('Traversing elements in backward direction'); while(itr.hasPrevious()){ System.out.println('index:'+itr.previousIndex()+' value:'+itr.previous()); } } }
Ieșire:
Traversing elements in forward direction index:0 value:Amit index:1 value:Sachin index:2 value:Vijay index:3 value:Kumar Traversing elements in backward direction index:3 value:Kumar index:2 value:Vijay index:1 value:Sachin index:0 value:Amit
Exemplu de listă: carte
Să vedem un exemplu de Listă în care adăugăm cărțile.
import java.util.*; class Book { int id; String name,author,publisher; int quantity; public Book(int id, String name, String author, String publisher, int quantity) { this.id = id; this.name = name; this.author = author; this.publisher = publisher; this.quantity = quantity; } } public class ListExample5 { public static void main(String[] args) { //Creating list of Books List list=new ArrayList(); //Creating Books Book b1=new Book(101,'Let us C','Yashwant Kanetkar','BPB',8); Book b2=new Book(102,'Data Communications and Networking','Forouzan','Mc Graw Hill',4); Book b3=new Book(103,'Operating System','Galvin','Wiley',6); //Adding Books to list list.add(b1); list.add(b2); list.add(b3); //Traversing list for(Book b:list){ System.out.println(b.id+' '+b.name+' '+b.author+' '+b.publisher+' '+b.quantity); } } }Testează-l acum
Ieșire:
101 Let us C Yashwant Kanetkar BPB 8 102 Data Communications and Networking Forouzan Mc Graw Hill 4 103 Operating System Galvin Wiley 6
Subiecte asemănătoare
Diferența dintre ArrayList și LinkedList
Diferența dintre Array și ArrayList
Când să utilizați ArrayList și LinkedList în Java
Diferența dintre ArrayList și Vector
Cum se compară două ArrayList în Java
comentariu javascript
Cum să inversați ArrayList în Java
Când să utilizați ArrayList și LinkedList în Java
Cum să faci ArrayList doar pentru citire
Diferența dintre lungimea matricei și dimensiunea () a ArrayList în Java
Cum se sincronizează ArrayList în Java
Cum se transformă ArrayList în Array și Array în ArrayList în java
Array vs ArrayList în Java
Cum să sortați Java ArrayList în ordine descrescătoare
Cum să eliminați duplicatele din ArrayList în Java