översikt
i den här ArrayList articles-serien lär du dig idag hur man konverterar en sträng till en ArrayList med hjälp av java inbyggda metoder. Det finns många scenarier i realtidsapplikationer där vi behöver göra omvandla strängen till en lista med objekt. Typiskt sträng bör vara flera värden åtskilda av en avgränsare. Ta till exempel en sträng som ”Started,Approved,In Progress,Completed”. Här ser vi statyerna i strängformat och alla dessa statuser är för bearbetning av biljetterna som användarna har tagit upp. Detta är statusflödet. Vi måste nu konvertera denna sträng till en lista<sträng>.
Obs: String kan ha heltal, dubbla och strängar värden med en avgränsare. Samma nedan visade program fungerar för alla typer av värden som finns i inmatningssträngen.
Skriv ett program för att konvertera sträng till ArrayList i Java
nedanstående process och program används för att visa att konvertera kommaseparerade värden till ArrayList.
String allStatus = "Started,Approved,In Progress,Completed";
Lägg märke till att strängen har ’,’ avgränsare som separerar varje status. Så vi kan säga komma som avgränsare här. String API har en metod split () som tar en regex för att matcha mönstret och delade värden. Efter lyckad split, split() metod returnerar en sträng array sträng. Denna returnerade Strängmatris innehåller värdena. Nu är det sista steget att konvertera denna Strängmatris till en lista med arrayer.asList () metod. asList () är en statisk metod så att vi kan ringa direkt med klassnamnet.
package com.javaprogramto.engineering.programs;import java.util.Arrays;import java.util.List;/** * * Java Program To Convert String to ArrayList Using Arrays.asList() * * @author javaprogramto.com - Venkatesh * */public class StringToArrayList { public static void main(String args) { String allStatus = "Started,Approved,In Progress,Completed"; System.out.println("string : " + allStatus); // spliting by comma String statusArray = allStatus.split(","); // converting string array to list List statusList = Arrays.asList(statusArray); // Iterating list of strings using for-each. System.out.println("Converted List values are : "); for (String status : statusList) { System.out.println(status); } }}
utgång:
string : Started,Approved,In Progress,CompletedConverted List values are : StartedApprovedIn ProgressCompleted
konverterad lista< sträng> skrivs ut med ett för-varje koncept.
detta kan göras med Java 8 för varje i en enda rad enligt nedan och kommer att ge samma resultat. Ordern bevarades också från sträng.
statusList.forEach(status -> System.out.println(status));
slutsats
i den här artikeln har vi lärt oss hur man konverterar kommaseparerade värden till en ArrayList. Strängen kan ha någon avgränsare som#,*, !, / eller @. För alla dessa avgränsare ska skickas till split () metod sedan nästa är att ringa matriser.asList () metod.