Sobes.tech
Junior — Middle

Pode explicar o que é o LinkedHashMap em Java e quais são as suas características?

sobes.tech IA

Resposta da IA

O LinkedHashMap em Java é uma implementação da interface Map que mantém a ordem de inserção dos elementos.

Características do LinkedHashMap:

  • Os elementos são armazenados em pares chave-valor, assim como no HashMap.
  • Ao contrário do HashMap, o LinkedHashMap suporta uma lista ligada de elementos, permitindo iterar na ordem de inserção.
  • Permite usar a ordem de acesso (access order), útil para implementar caches com política LRU (Least Recently Used).
  • Tempo de acesso, inserção e remoção aproximadamente O(1), assim como o HashMap.

Exemplo de uso:

import java.util.LinkedHashMap;

public class Example {
    public static void main(String[] args) {
        LinkedHashMap<Integer, String> map = new LinkedHashMap<>();
        map.put(1, "um");
        map.put(2, "dois");
        map.put(3, "três");

        // Iteração na ordem de inserção
        for (Integer key : map.keySet()) {
            System.out.println(key + " -> " + map.get(key));
        }
    }
}

A saída será na ordem 1, 2, 3, o que não é garantido em um HashMap comum.