Visão geral da coleção da lista : herdado da coleção
- Na coleção ordenada, os usuários podem controlar com precisão a posição de inserção de cada elemento na lista.
Os usuários podem acessar elementos por índice inteiro e pesquisar por elementos na lista - Permitir elementos duplicados
- ArrayList e LinkedList são herdados de List, então List tem métodos, eles também têm
- A estrutura de dados subjacente de ArrayList é uma matriz, e a estrutura de dados subjacente de LinkedList é uma lista vinculada
Métodos específicos da coleção de listas:
4. void add (int index, elemento E): insira o elemento especificado na posição especificada nesta coleção
5. E remove (int index): exclui o elemento no índice especificado e retorna o elemento excluído
6. E set (int índice, elemento E): modifica o elemento no índice especificado e retorna o elemento modificado
7. E get (int índice): retorna o elemento no índice especificado
Exemplo:
package List;
import java.util.ArrayList;
import java.util.List;
public class ListDemo02 {
public static void main(String[] args) {
List<String> list=new ArrayList<String>();
list.add("hello");
list.add("world");
list.add("java");
//void add(int index,E element)
list.add(1,"javase");
//E remove(int index)
System.out.println(list.remove("hello"));
//E set(int index,E element)
System.out.println(list.set(2,"javaee"));
//E get(int index)
for(int i=0;i<list.size();i++) {
System.out.println(list.get(i));
}
System.out.println(list);
}
}
ListIterator: list iterator
- Obtido pelo método listiterator () da coleção List, portanto, é um iterador exclusivo da coleção List
- Herdado de Iterator: E next (): retorna o próximo elemento do iterador
- boolean hasNext (): retorna verdadeiro se o iterador tiver mais elementos
- E anterior (): Retorna ao elemento anterior da lista
- boolean hasPrevious (): retorna verdadeiro se o iterador tiver mais elementos enquanto percorre a lista na direção oposta neste momento
- void add (E e): insere o elemento especificado na lista
Exemplo:
package List;
import java.util.*;
public class ListIteatorDemo {
public static void main(String[] args) {
List<String> list=new ArrayList<String>();
list.add("hello");
list.add("world");
list.add("java");
ListIterator<String> lit=list.listIterator();
/* while(lit.hasNext()) {
String s=lit.next();
System.out.println(s);
}
System.out.println("------");
//倒序遍历
while(lit.hasPrevious()) {
String s=lit.previous();
System.out.println(s);
}
*/
while(lit.hasNext()) {
String s=lit.next();
if(s.equals("world")) {
lit.add("javaee");
}
}
System.out.println(list);
}
}
Funções exclusivas LinkedList:
- public void addFirst (E e): Insira o elemento especificado no início da lista
- public void addLast (E e): Acrescenta o elemento especificado ao final desta lista
- public E getFirst (): retorna o primeiro elemento desta lista
- public E getLast (): retorna o último elemento desta lista
- public E removeFirst (): remove e retorna o primeiro elemento desta lista
- public E removeLast (): remove e retorna o último elemento desta lista
Exemplo:
package List;
import java.util.LinkedList;
public class LinkedListDemo {
public static void main(String[] args) {
LinkedList<String> linkedList=new LinkedList<>();
linkedList.add("hello");
linkedList.add("world");
linkedList.add("java");
linkedList.addFirst("javase");
linkedList.addLast("javaee");
System.out.println(linkedList.getFirst());
System.out.println(linkedList.getLast());
System.out.println(linkedList.removeFirst());
System.out.println(linkedList.removeLast());
System.out.println(linkedList);
}
}