Ich möchte unter String teilen und es in HashMap speichern.Split-String und speichern Sie es in HashMap Java 8
String responseString = "name~peter-add~mumbai-md~v-refNo~";
erste aufgespalten I die Zeichenfolge delimeter Bindestrich verwendet (-) und in Array Speicher wie unten:
public static List<String> getTokenizeString(String delimitedString, char separator) {
final Splitter splitter = Splitter.on(separator).trimResults();
final Iterable<String> tokens = splitter.split(delimitedString);
final List<String> tokenList = new ArrayList<String>();
for(String token: tokens){
tokenList.add(token);
}
return tokenList;
}
List<String> list = MyClass.getTokenizeString(responseString, "-");
und dann den folgenden Code zu konvertieren unter Verwendung von Strom Hashmap.
HashMap<String, String> = list.stream()
.collect(Collectors.toMap(k ->k.split("~")[0], v -> v.split("~")[1]));
Der Stromabnehmer funktioniert nicht, da es keinen Wert gegen refNo gibt.
Es funktioniert korrekt, wenn ich gerade Anzahl der Elemente in ArrayList habe.
Gibt es eine Möglichkeit, damit umzugehen? Ich schlage auch vor, wie ich Stream verwenden kann, um diese beiden Aufgaben zu tun (ich möchte nicht getTokenizeString() -Methode verwenden) mit Stream Java 8.
Vielen Dank für Ihre schnelle und funktionierende Antwort. Arbeiten wie Charme. –