2017-04-03 3 views
-2

, wie eine Liste von Map.Entry<String, String> zu einem String konvertieren?Liste der Map.Entry <String, String>

List<Map.Entry<String, String>> : [AREA_DS_ID=1,5,9,13,17,21,25,29,33, PROJECTS_ID=13,78,267,18,28,33,55,99, SIGNAL_NAME=a, ASSESSMENTNAME=a] 
// these are the values which I need to convert into String. 
+0

[Warum ist „Kann mir jemand helfen?“, nicht eine tatsächliche Frage?] (https: //meta.stackoverflow.com/questions/284236/why-ist -kann-jemand-help-me-not-an-Ist-Frage) –

+1

@StefanWarminski ist das ok jetzt Kumpel? –

+0

Was ist die erwartete Ausgabe? Was hast du probiert? –

Antwort

0

was meinst du ?? Sie möchten Kartenelement (Schlüssel = Wert) in Zeichenfolgenwert umwandeln ??? Dazu können Sie eine Schleife auf MapEintrag Satz verwenden und Schlüssel und den Wert der Kartenelemente lesen und benutzerdefinierte Zeichenfolge und concat alle Liste erstellen:

String resultString ="" ; 
for(Map.Entry<String,String> entry : map.EntrySet()) 
{ 
    String key = entry.getKey(); 
    String value = entry.getValue(); 
    // create custom string for each map element 
    String testString = key + "=" + value; 
    resultString += testString ; 
} 

für eine Liste von Karte Sie Schleife auf Liste definieren:

for(Map<String,String> map : list) 
{ 
    // use map such above code 
    ... 
} 
+0

Danke Mann es hat funktioniert, aber was ist, wenn ich es in einem String-Array als Schlüsselwertpaar hinzufügen möchte? –

+1

Hinweis: String-Konkatation ist eine Schleife ist keine gute (performante) Idee. Verwenden Sie stattdessen einen 'StringBuilder' –

+1

@AnujVictor Sie können den erzeugten String zu einer Liste hinzufügen und die Liste nach Ihrer Schleife konvertieren' String [] entries = entryList.toArray (new String [entryList.size()]); ' –

0

genau wie eine Antwort auf Ihre Bemerkung: ich habe gerade versucht, und es gibt keine Ausnahme überhaupt:

Map<String, String> map = new LinkedHashMap<>(); 
map.put("AREA_DS_ID", "1,5,9,13,17,21,25,29,33"); 
map.put("PROJECTS_ID", "13,78,267,18,28,33,55,99"); 
map.put("SIGNAL_NAME", "a"); 
map.put("ASSESSMENTNAME", "a"); 

List<String> entryList = new ArrayList<>(); 
StringBuilder sb = new StringBuilder(); 
for (Entry<String, String> entry : map.entrySet()) { 
    String value = entry.getKey() + '=' + entry.getValue(); 
    entryList.add(value); 
    sb.append(value); 
} 
String[] entries = entryList.toArray(new String[entryList.size()]); 
String mapAsString = sb.toString(); 
+0

thanx Kumpel .. its mir jetzt gelöscht. vielen Dank :) –

Verwandte Themen