Sobes.tech
Junior — Middle

Quais são as diferenças entre as interfaces Collection e Map em Java, e para que elas servem?

sobes.tech IA

Resposta da IA

Collection e Map são duas interfaces principais em Java para trabalhar com coleções, mas têm propósitos diferentes:

  • Collection é a interface base para grupos de objetos que podem ser percorridos. Inclui listas (List), conjuntos (Set) e filas (Queue). A ideia principal é armazenar um conjunto de elementos, onde cada elemento é um objeto.

  • Map é uma estrutura de dados para armazenar pares "chave-valor". Ela não herda de Collection, pois não é apenas um conjunto de elementos, mas um mapeamento de chaves para valores.

Para que servem:

  • Collection é útil quando precisa trabalhar com um conjunto de elementos, por exemplo, uma lista de utilizadores ou um conjunto de valores únicos.
  • Map é útil quando precisa encontrar rapidamente um valor por sua chave, por exemplo, armazenar configurações por nome de parâmetro.

Exemplo:

// Exemplo de Collection
List<String> list = new ArrayList<>();
list.add("maçã");
list.add("banana");

// Exemplo de Map
Map<String, Integer> map = new HashMap<>();
map.put("maçã", 3);
map.put("banana", 5);

System.out.println(list.get(0)); // maçã
System.out.println(map.get("banana")); // 5