Arrays são estruturas fundamentais em Java para armazenar coleções de elementos do mesmo tipo. Abaixo estão diversas operações comuns realizadas com arrrays.
- Criando Arrays
Existem múltiplas formas de inicializar um array em Java:
// Declaração com tamanho fixo
String[] nomes = new String[4];
// Inicialização direta com valores
String[] cores = {"azul", "verde", "amarelo", "vermelho"};
// Inicialização usando new com valores
String[] frutas = new String[]{"maçã", "banana", "laranja", "uva"};
- Exibindo o Conteúdo de um Array
Imprimir um array diretamente não mostra seus elementos. Utilize Arrays.toString() para uma exibição legível:
int[] notas = { 7, 8, 9, 10, 6 };
String representacao = Arrays.toString(notas);
// Imprime a referência do objeto, não os valores
System.out.println(notas);
// Exemplo de saída: [I@3b6eb2ec
// Imprime os valores formatados
System.out.println(representacao);
// Saída: [7, 8, 9, 10, 6]
- Convertendo Array para ArrayList
Para criar um ArrayList a partir de um array, utilize Arrays.asList():
String[] linguagens = { "Java", "Python", "C++", "JavaScript", "Go" };
ArrayList<string> listaLinguagens = new ArrayList<>(Arrays.asList(linguagens));
System.out.println(listaLinguagens);
// Saída: [Java, Python, C++, JavaScript, Go]
</string>
- Verificando se um Array Contém um Elemento
A verificação de existência de um valor pode ser feita convertendo temporariamente para lista:
String[] paises = { "Brasil", "Argentina", "Chile", "Colômbia", "Peru" };
boolean encontrado = Arrays.asList(paises).contains("Chile");
System.out.println(encontrado);
// Saída: true
- Concatenando Dois Arrays
Utilize a biblioteca Apache Commons Lang para unir arrays de forma simples:
int[] primosA = { 2, 3, 5, 7, 11 };
int[] primosB = { 13, 17, 19, 23, 29 };
// Biblioteca Apache Commons Lang
int[] todosPrimos = ArrayUtils.addAll(primosA, primosB);
- Passando um Array como Argumento Inline
É possível criar e passar um array diretamente como parâmetro de um método:
processarDados(new String[]{"dado1", "dado2", "dado3", "dado4", "dado5"});
- Unindo Elementos de um Array em uma String
A biblioteca Apache Commons Lang oferece uma maneira prática de concatenar elementos:
// Utilizando Apache Commons Lang
String resultado = StringUtils.join(new String[] { "Java", "Spring", "Hibernate" }, " | ");
System.out.println(resultado);
// Saída: Java | Spring | Hibernate
- Convertendo ArrayList de Volta para Array
Para transformar um ArrayList em um array convencional:
String[] ferramentas = { "Git", "Docker", "Jenkins", "Maven", "Gradle" };
ArrayList<string> listaFerramentas = new ArrayList<>(Arrays.asList(ferramentas));
String[] arrayFerramentas = new String[listaFerramentas.size()];
listaFerramentas.toArray(arrayFerramentas);
for (String ferramenta : arrayFerramentas)
System.out.println(ferramenta);
</string>
- Convertendo um Array para Set
Para eliminar duplicatas e obter um conjunto, converta o array para HashSet:
String[] cidades = { "São Paulo", "Rio de Janeiro", "Curitiba", "Salvador", "Belo Horizonte" };
Set<string> conjuntoCidades = new HashSet<>(Arrays.asList(cidades));
System.out.println(conjuntoCidades);
// Saída pode variar: [Curitiba, Belo Horizonte, Salvador, São Paulo, Rio de Janeiro]
</string>
- Invertendo a Ordem de um Array
Para inverter os elementos de um array, utilize o método ArrayUtils.reverse():
int[] valores = { 10, 20, 30, 40, 50 };
ArrayUtils.reverse(valores);
System.out.println(Arrays.toString(valores));
// Saída: [50, 40, 30, 20, 10]
- Removendo um Elemento Específico de um Array
A remoção de um elemento gera um novo array sem o item desejado:
int[] digitos = { 1, 2, 3, 4, 5 };
int[] semTres = ArrayUtils.removeElement(digitos, 3); // cria um novo array
System.out.println(Arrays.toString(semTres));
// Saída: [1, 2, 4, 5]
- Convertendo um Inteiro para Array de Bytes
Para obter a representação em bytes de um número inteiro, utilize ByteBuffer:
byte[] byteArray = ByteBuffer.allocate(4).putInt(42).array();
for (byte b : byteArray) {
System.out.format("0x%x ", b);
}
// Saída: 0x0 0x0 0x0 0x2a