split-string und speichern Sie es in die HashMap java 8

Will ich split unterhalb string und speichern Sie es in die HashMap.

String responseString = "name~peter-add~mumbai-md~v-refNo~"; 

zuerst habe ich split den string mit delimeter Bindestrich (-) und speichern Sie es in ArrayList wie folgt:

 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 verwenden Sie dann den folgenden code zu konvertieren, um HashMap mit Strom.

HashMap<String, String> = list.stream()
                          .collect(Collectors.toMap(k ->k.split("~")[0], v -> v.split("~")[1]));

Den stream collector funktioniert nicht, da kein Wert gegen refNo.

Funktioniert es einwandfrei, wenn ich gerade Anzahl von Elementen in der ArrayList.

Gibt es eine Möglichkeit, dies zu behandeln? Auch darauf, wie ich verwenden können, Strom zu tun, diese zwei Aufgaben (I dont verwenden möchten getTokenizeString () - Methode) die Nutzung von Streams in java 8.

InformationsquelleAutor Sangam Belose | 2017-01-05

Schreibe einen Kommentar