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