O universo da programação Java é vasto e repleto de ferramentas poderosas para desenvolver aplicações eficientes e robustas. Uma dessas ferramentas é o conjunto de estruturas de dados chamado “Collections”, parte integrante do Java Collections Framework (JCF). As Collections desempenham um papel fundamental no armazenamento e manipulação de grupos de objetos em Java. Neste artigo, vamos mergulhar nas principais Collections do Java: List
, Set
e Map
.
Introdução às Collections
As Collections oferecidas pelo JCF representam uma variedade de estruturas de dados, cada uma projetada para atender a necessidades específicas de armazenamento e manipulação. Vamos explorar cada uma delas e entender suas características e usos.
Curso Java - Fundamentos
Conhecer o cursoList: Ordenação e Indexação
A interface java.util.List
é uma das principais Collections do Java. Ela representa uma coleção de objetos que são ordenados e indexados, permitindo o acesso a elementos por meio de índices. A JCF oferece duas implementações comuns dessa interface: ArrayList
e LinkedList
.
Para ilustrar seu uso, considere o exemplo abaixo utilizando ArrayList
:
package br.com.treinaweb;
import java.util.ArrayList;
import java.util.List;
public class App {
public static void main( String[] args ) {
List<String> alunos = new ArrayList<String>();
alunos.add("João");
alunos.add("Maria");
alunos.add("José");
System.out.println(alunos); // [João, Maria, José]
alunos.remove("Maria");
System.out.println(alunos); // [João, José]
String aluno = alunos.get(0);
System.out.println(aluno); // João
}
}
Curso Java - Collections - Parte 1
Conhecer o cursoSet: Elementos Únicos
A interface java.util.Set
representa uma coleção de objetos que não são ordenados e não permitem elementos duplicados. Duas implementações comuns são HashSet
e TreeSet
. Essa coleção é especialmente útil quando a exclusividade dos elementos é crucial.
Um exemplo com HashSet
é apresentado abaixo:
package br.com.treinaweb;
import java.util.HashSet;
import java.util.Set;
public class App {
public static void main( String[] args ) {
Set<String> alunos = new HashSet<String>();
alunos.add("João");
alunos.add("Maria");
alunos.add("João"); // Não será adicionado novamente
System.out.println(alunos); // [João, Maria]
}
}
Curso Java - Collections - Parte 2
Conhecer o cursoMap: Associação Chave-Valor
A interface java.util.Map
representa uma coleção de elementos em pares chave-valor. Isso permite associar um valor a uma chave única, o que é útil para armazenar e recuperar informações de maneira eficiente. Duas implementações notáveis são HashMap
e TreeMap
.
Confira um exemplo usando HashMap
:
package br.com.treinaweb;
import java.util.HashMap;
import java.util.Map;
public class App {
public static void main( String[] args ) {
Map<String, String> alunos = new HashMap<String, String>();
alunos.put("123", "João");
alunos.put("456", "Maria");
alunos.put("789", "José");
System.out.println(alunos); // {123=João, 456=Maria, 789=José}
alunos.remove("456");
System.out.println(alunos); // {123=João, 789=José}
String nome = alunos.get("123");
System.out.println(nome); // João
}
}
Curso Java - Orientação a objetos
Conhecer o cursoConclusão
As Collections do Java desempenham um papel fundamental na manipulação de dados em aplicações Java. Através das interfaces List
, Set
e Map
, os desenvolvedores têm acesso a poderosas ferramentas para armazenar, organizar e recuperar informações. Este artigo explorou brevemente essas principais Collections, mas o Java Collections Framework oferece ainda mais recursos para atender às diversas necessidades de desenvolvimento.
Se você deseja aprofundar seus conhecimentos sobre Collections em Java, não deixe de conferir os cursos “Java - Collections - Parte 1” e “Java - Collections - Parte 2” oferecidos pela TreinaWeb. Com esses cursos práticos, você estará bem equipado para utilizar eficientemente as Collections em seus projetos.
Lembre-se de que as Collections são apenas uma parte do vasto ecossistema do Java, mas são essenciais para criar aplicações eficientes e organizadas. Portanto, explore, pratique e aprimore suas habilidades para se tornar um desenvolvedor Java excepcional.