Métodos de Array
Parte da seção Fundamentos do Journey de Java da Coddy. Lição 61 de 73.
Arrays vêm com muitos métodos (funcionalidades). Para acessar um método, escreva:
Arrays.methodName(arrayName, otherParameters)Aqui está uma lista dos métodos básicos:
fill(array, value)- preenche o array com um valor específico
toString()- converte o array em uma string
sort(array)- ordena o array em ordem crescente
equals(array1, array2)- compara dois arrays para determinar se são iguais
Veja um exemplo de como usar o método fill com toString:
int[] numbers = new int[5];
Arrays.fill(numbers, 10);
System.out.println(Arrays.toString(numbers));Isso produzirá [10, 10, 10, 10, 10].
Exemplo do método sort:
int[] numbers = {5, 2, 9, 1, 5, 6};
Arrays.sort(numbers);
System.out.println(Arrays.toString(numbers));Isso produzirá [1, 2, 5, 5, 6, 9].
Desafio
FácilCrie um método chamado merge que receba dois arrays como argumentos. O método combina os dois arrays em um único array ordenado e o retorna.
Importante: O array final combinado deve estar ordenado em ordem crescente.
Por exemplo, os seguintes argumentos: merge(new String[] {"1", "4", "2"}, new String[] {"2", "5", "9"}) retornarão ["1", "2", "2", "4", "5", "9"] (observe que o resultado está ordenado)
Use System.arraycopy() para copiar elementos de um array para outro. A sintaxe é:
System.arraycopy(sourceArray, sourceStartPosition, destinationArray, destinationStartPosition, length)System.arraycopy() só copia para um array que já existe; ele nunca aumenta o destino. Crie primeiro o array combinado com arr1.length + arr2.length posições, copie arr1 para a posição 0 e, em seguida, copie arr2 começando na posição arr1.length.
Por exemplo:
// Source array
String[] sourceArray = {"1", "2", "3", "4", "5"};
// Destination array
String[] destinationArray = new String[5];
// Copy elements from sourceArray to destinationArray
System.arraycopy(sourceArray, 0, destinationArray, 0, 5);Array de destino após a cópia: 1 2 3 4 5
Experimente você mesmo
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static String[] merge(String[] arr1, String[] arr2) {
// Escreva o código aqui
return null;
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String textArr1 = scanner.nextLine();
String textArr2 = scanner.nextLine();
String[] arr1 = textArr1.split(",");
String[] arr2 = textArr2.split(",");
String[] mergedArray = merge(arr1, arr2);
System.out.println(Arrays.toString(mergedArray));
}
}Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operadores - Parte 1
Operadores aritméticosOperador móduloIncremento/DecrementoPós-incremento/Pós-decrementoAtalhos aritméticosOperadores de comparaçãoComparação de strings7IO Básico
Métodos System.outFormatação da saídaClasse ScannerRevisão - Até 120Revisão - Verdadeiro ou falso5Operadores — Parte 2
Operadores lógicos — Parte 1Operadores lógicos — Parte 2Revisão — Lógica simplesOperadores lógicos — Parte 3Operadores lógicos — Parte 411Fundamentos de Arrays
Declarando ArraysAcessando ElementosModificando ArraysMétodos de ArrayRevisão - Array de ProdutosRevisão - Array Invertido3Variáveis — Parte 2
ConstantesConvenções de nomenclaturaRecapitulação — Inicializar variáveisConversão de tipos — Parte 1Conversão de tipos — Parte 26Tomada de Decisão
Instrução IfIf - ElseInstrução SwitchOperador TernárioRevisão - If ElseIf - Else AninhadoPratique por conta própria: Compilador de Java online