CodeGym /Java blogg /Slumpmässig /Konvertera lista till Array i Java
John Squirrels
Nivå
San Francisco

Konvertera lista till Array i Java

Publicerad i gruppen
Lista och matriser är två sätt att lagra data i Java som du kommer att använda ganska ofta. I projekt där du behöver lagra data utan någon form av filhantering låter list och arrayer dig lagra data under hela programmets körning. Vi kommer att använda Class ArrayList som implementerar List Interface i Java omväxlande genom hela den här handledningen.

Skillnaden mellan List och Array

Lista Array
Storleken på en lista kan ändras Storleken på en array kan inte ändras
Du kan inte lagra primitiva typer i List Du kan lagra primitiva typer i Array
Du kan använda Generics med List Du kan inte använda Generics med Array
Förbrukar mer minne Förbrukar mindre minne

Konvertera lista till array med biblioteksfunktion

List har en toArray() -metod som direkt omvandlar innehållet i valfri lista till en array samtidigt som textens placering i Arrayen behålls som den var i den ursprungliga listan. Här är algoritmen/stegen för att konvertera en lista till array i java med denna inbyggda biblioteksfunktion.
  1. Initiera en ArrayList.
  2. Lägg till element i listan med metoden list.add(data_type) .
  3. Skapa en Array med samma storlek som listan.
  4. Konvertera listan till en array genom att använda variabelnamnet på arrayen som skapades i steg 3 som ett argument.
  5. Skriv ut innehållet i Arrayen.
Koden som implementerar dessa steg ges nedan.

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] + "  ");
        }
    }
}

Konvertera lista till array utan biblioteksfunktion

Ibland kan det finnas ett krav att konvertera listan till en array utan att använda inbyggda funktioner. Problemet kan använda vissa begränsningar när det gäller biblioteksfunktioner. Detta krav är vanligt för programmeringsstudenter som uppmuntras att arbeta utan biblioteksfunktioner för att hjälpa dem att lära sig de inre funktionerna i dessa funktioner innan de implementeras. I sådana fall kan du använda följande steg för att konvertera en lista till en array i java utan någon biblioteksfunktion.
  1. Initiera en ArrayList.
  2. Lägg till element i listan med metoden list.add(data_type) .
  3. Skapa en Array med samma storlek som listan.
  4. Skapa en for-loop som itererar genom varje element i ArrayList och skickar den till Array[index] genom funktionen list.get(index) .
  5. Skriv ut innehållet i arrayen för att visa att du faktiskt konverterar listan till en array.
Koden för att implementera dessa steg ges nedan.

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] + "  ");
        }
    }
}
På samma sätt, om du också undrar hur man konverterar en array till en lista, kan du göra det genom att använda den inbyggda Array.asList()- metoden eller iterera genom arrayen och lagra värden vid varje index i listan.
Kommentarer
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION