Listar, empilhar, enfileirar, definir e mapear definições e métodos comuns

Insira a descrição da imagem aqui

conjunto

Dois tipos principais na biblioteca de contêiner Java

1. Apenas um elemento é armazenado em cada slot
  Collection:描述所有序列容器的共性的根接口;
  List:以特定的顺序保存一组元素;
  Set:元素不能重复;
  Queue:只允许在容器的一端插入对象,并从另一端移除对象。
2. Dois objetos são salvos em cada slot
  Map:键与之相关联的值。

Lista

1. Resumo do método:
  • add (E e): anexa o elemento especificado ao final desta lista (operação opcional);
  • contém (Objeto o): Se esta lista contém o elemento especificado, ele retorna verdadeiro;
  • remove (int index): exclui o elemento na posição especificada na lista (operação opcional), o método equels () será usado;
  • indexOf (Object o): Retorna o índice da primeira ocorrência do elemento especificado nesta lista. Se esta lista não contiver um elemento, retorna -1. O método equels () será usado;
  • subList (int fromIndex, int toIndex): Retorna a visualização entre fromIndex (inclusive) e toIndex especificado nesta lista;
  • containsAll (Collection <?> c): Se esta lista contém todos os elementos da coleção especificada, ela retorna true.
  • retémAll (Coleção <?> c): retém apenas os elementos nesta lista contidos na coleção especificada (operação opcional), o comportamento resultante depende de equals ();
  • removeAll (Collection <?> c): Remove todos os elementos contidos na coleção especificada desta lista (operação opcional), o comportamento resultante depende de equals ();
  • set (int index, elemento E): Substitua o elemento na posição especificada nesta lista pelo elemento especificado (operação opcional);
  • isEmpty (): Se esta lista não contiver elementos, ela retornará verdadeiro;
  • clear (): apaga todos os elementos desta lista (operação opcional);
2. ArrayList: É mais longo do que os elementos de acesso aleatório, mas é mais lento para inserir e remover elementos no meio da Lista;
3. LinkList: fornece acesso otimizado por meio de operações de inserção e exclusão de baixo custo no meio da lista.
  • Implementou a interface básica da lista
  • getFirst () e element () retornam o cabeçalho da lista em vez de removê-lo. Se a lista estiver vazia, uma NoSuchElementException será lançada; se a lista estiver vazia, o método peek () retornará nulo;
  • removeFirst () e remove () removem e retornam o topo da lista, e lançam NoSuchElementException quando a lista está vazia; poll () retorna null se a lista estiver vazia;
  • removeLast () remove e retorna o último elemento da lista.

Pilha

1. A LinkList first-in-last-out (LIFO) tem um método para implementar diretamente todas as funções da pilha, então você pode usar diretamente a LinkedList como uma pilha. Às vezes, uma "pilha" real pode tornar as coisas claras.
	public class Stack<T> {
    
      
    private LinkedList<T> storage = new LinkedList<T>();  
    public void push(T v){
    
     storage.addFirst(v); }  
    public T peek(){
    
     return storage.getFirst(); }  
    public T pop(){
    
     return storage.removeFirst(); }  
    public boolean empty(){
    
     return storage.isEmpty(); }  
    public String toString(){
    
     return storage.toString(); }  
}

Fila

1. A fila é um contêiner típico primeiro a entrar, primeiro a sair (FIFO), ou seja, as coisas são colocadas em uma seção do contêiner e retiradas da outra extremidade e a ordem em que as coisas são colocadas no contêiner é a mesma em que são retiradas
2. Resumo do método:
* offer(E e) :如果在不违反容量限制的情况下立即执行,则将指定的元素插入到此队列中;
* peek() :检索但不删除此队列的头,如果此队列为空,则返回 null;
* element() :检索,但不删除,这个队列的头,为空会抛出NoSuchElementException; 
* poll() :检索并删除此队列的头,如果此队列为空,则返回 null 。
* remove() 检索并删除此队列的头,为空会抛出NoSuchElementException。
3. PriorityQueue

A fila de prioridade declara que o próximo elemento exibido é o elemento mais necessário (com a prioridade mais alta)

Conjunto

1. HashSet: Use uma maneira bastante complicada de armazenar elementos, a maneira mais rápida de obter elementos, use uma função hash;
2. TreeSet: Salve os objetos em ordem crescente dos resultados da comparação e armazene-os na estrutura de dados em árvore vermelha e preta;
3. LinkedHashSet: Salva objetos na ordem em que são adicionados; hashes também são usados ​​e listas vinculadas são usadas para manter a ordem de inserção dos elementos.

Mapa

1. Map pode retornar um conjunto de suas chaves, seu valor é Collection ou seu par de valores-chave é Set, keySet () retorna uma visualização Set das chaves contidas neste mapa.
1. HashMap: Fornece a tecnologia de pesquisa mais rápida, não armazena elementos em nenhuma ordem óbvia;
2. TreeMap: Salve as chaves do objeto em ordem crescente do resultado da comparação;
3. LinkedHashMap: Salve as chaves na ordem de inserção, mantendo a velocidade de pesquisa do HashMap.

Iterator

1. Iterator também é um padrão de design, é um objeto, ele atravessa e seleciona objetos na sequência quando funciona;
2. Estranhas restrições aos iteradores:
* 使用iterator()要求容器返回一个Iterator。Iterator将准备好返回序列的一个元素;
* 使用next()获得序列中的下一个元素;
* 使用hasNext()检查序列中是否还有元素;
* 使用remove()将迭代器信近返回的元素删除。

Acho que você gosta

Origin blog.csdn.net/Zmd_23/article/details/108554176
Recomendado
Clasificación