CodeGym /Java Blog /Random-IT /Converti elenco in array in Java
John Squirrels
Livello 41
San Francisco

Converti elenco in array in Java

Pubblicato nel gruppo Random-IT
L'elenco e gli array sono due modi per archiviare i dati in Java che utilizzerai abbastanza spesso. Nei progetti in cui è necessario archiviare i dati senza alcun tipo di gestione dei file, elenchi e array consentono di archiviare i dati durante l'esecuzione del programma. Useremo Class ArrayList che implementa l'interfaccia List in Java in modo intercambiabile durante questo tutorial.

Differenza tra lista e matrice

Elenco Vettore
La dimensione di un elenco può essere modificata La dimensione di un array non può essere modificata
Non è possibile archiviare tipi primitivi in ​​List È possibile archiviare i tipi primitivi in ​​Array
Puoi usare Generics con List Non puoi usare Generics con Array
Consuma più memoria Consuma meno memoria

Conversione da lista a matrice con funzione di libreria

List ha un metodo toArray() che converte direttamente il contenuto di qualsiasi elenco in un array mantenendo la posizione del testo nell'array com'era nell'elenco originale. Ecco l'algoritmo/i passaggi per convertire un elenco in un array in java utilizzando questa funzione di libreria integrata.
  1. Inizializza un ArrayList.
  2. Aggiungi elementi all'elenco tramite il metodo list.add(data_type) .
  3. Crea un array con le stesse dimensioni dell'elenco.
  4. Converti l'elenco in un array utilizzando il nome della variabile dell'array creato nel passaggio 3 come argomento.
  5. Stampa il contenuto dell'array.
Il codice che implementa questi passaggi è riportato di seguito.

import java.util.ArrayList;
public class convertListToArray {
 
    public static void main(String[] args) {
 
        //Converting List to Array With Library Function
 
        //Declaration of Array List
        ArrayList<String> sampleList = new ArrayList<String>();
 
        //Adding Elements to Array List
        sampleList.add("California");
        sampleList.add("Texas");
        sampleList.add("Illinois");
        sampleList.add("Massachusetts");
        sampleList.add("Florida");
        sampleList.add("Virginia");
        sampleList.add("Colorado");
 
 
        //Printing the Array List
        System.out.println("Elements of List: " + sampleList);
 
        //Declaring Array with Equal Size to the List
        String[]arr = new String [sampleList.size()];
 
        //Converting List to Array
        sampleList.toArray(arr);
 
        //Printing the Array
        System.out.print("Elements of Array: ");
        for (int i = 0 ; i < arr.length ; i++){
            System.out.print(arr[i] + "  ");
        }
    }
}

Conversione da lista a matrice senza funzione di libreria

A volte, potrebbe essere necessario convertire l'elenco in un array senza utilizzare le funzioni integrate. Il problema in questione può utilizzare alcune restrizioni in termini di funzioni di libreria. Questo requisito è comune per gli studenti di programmazione che sono incoraggiati a lavorare senza funzioni di libreria per aiutarli ad apprendere il funzionamento interno di queste funzioni prima di implementarle. In tali casi, è possibile utilizzare i seguenti passaggi per convertire un elenco in un array in java senza alcuna funzione di libreria.
  1. Inizializza un ArrayList.
  2. Aggiungi elementi all'elenco tramite il metodo list.add(data_type) .
  3. Crea un array con le stesse dimensioni dell'elenco.
  4. Crea un ciclo for che ripeterà ogni elemento di ArrayList e lo passerà a Array[index] tramite la funzione list.get(index) .
  5. Stampa il contenuto dell'array per mostrare che stai effettivamente convertendo l'elenco in un array.
Di seguito è riportato il codice per l'implementazione di questi passaggi.

import java.util.ArrayList;
public class converListToArray2 {
 
    public static void main(String[] args) {
        //Converting List to Array Without Library Functions
 
        //Declaration of Array List
        ArrayList<String> sampleList = new ArrayList<String>();
 
        //Adding Elements to Array List
        sampleList.add("California");
        sampleList.add("Texas");
        sampleList.add("Illinois");
        sampleList.add("Massachusetts");
        sampleList.add("Florida");
        sampleList.add("Virginia");
        sampleList.add("Colorado");
 
 
        //Printing the Array List
        System.out.println("Elements of List: " + sampleList);
 
        //Declaring Array with Equal Size to the List
        String[]arr = new String [sampleList.size()];
 
        //Converting to Array
        for (int i = 0 ; i < arr.length ; i++){
            arr[i] = sampleList.get(i);
        }
 
        //Printing the Array
        System.out.print("Elements of Array: ");
        for (int i = 0 ; i < arr.length ; i++){
            System.out.print(arr[i] + "  ");
        }
    }
}
Allo stesso modo, se ti stai chiedendo anche come convertire un array in un elenco, puoi farlo utilizzando il metodo integrato Array.asList() o iterando l'array e memorizzando i valori in ogni indice nell'elenco.
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION