Menu
CoddyTech

Metodi degli array

Fa parte della sezione Fondamenti del percorso Java di Coddy. Lezione 61 di 73.

Gli array sono dotati di molti metodi (funzionalità). Per accedere a un metodo, scrivi:

Arrays.methodName(arrayName, otherParameters)

Ecco un elenco dei metodi di base:

  • fill(array, value) - riempie l'array con un valore specifico
  • toString() - converte l’array in una stringa
  • sort(array) - ordina l’array in ordine crescente
  • equals(array1, array2) - confronta due array per determinare se sono uguali

Ecco un esempio di come usare il metodo fill con toString:

int[] numbers = new int[5];
Arrays.fill(numbers, 10);
System.out.println(Arrays.toString(numbers));

Questo produrrà [10, 10, 10, 10, 10].

Esempio del metodo sort:

int[] numbers = {5, 2, 9, 1, 5, 6};
Arrays.sort(numbers);
System.out.println(Arrays.toString(numbers));

Questo produrrà [1, 2, 5, 5, 6, 9].

challenge icon

Sfida

Facile

Crea un metodo chiamato merge che riceve due array come argomenti. Il metodo unisce i due array in un unico array ordinato e lo restituisce.

Importante: L'array unito finale deve essere ordinato in ordine crescente.

Per esempio, i seguenti argomenti: merge(new String[] {"1", "4", "2"}, new String[] {"2", "5", "9"}) restituiranno ["1", "2", "2", "4", "5", "9"] (nota che il risultato è ordinato)

Usa System.arraycopy() per copiare gli elementi da un array a un altro. La sintassi è: 

System.arraycopy(sourceArray, sourceStartPosition, destinationArray, destinationStartPosition, length)

System.arraycopy() copia solo in un array che esiste già; non aumenta mai la dimensione dell'array di destinazione. Crea prima l'array unito con arr1.length + arr2.length posizioni, copia arr1 alla posizione 0, quindi copia arr2 a partire dalla posizione arr1.length.

Per esempio:

// 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 di destinazione dopo la copia: 1 2 3 4 5

Provalo tu

import java.util.Arrays;
import java.util.Scanner;


public class Main {
    public static String[] merge(String[] arr1, String[] arr2) {
        // Scrivi il codice qui
        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));
    }
}
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti

Esercitati da solo: Compilatore Java online