前提,key和value不包含 ‘,’     ,如果包含得自己做适当调整。

//{a=1, b=2, c=3} 格式转换成map
private static Map<String, String> mapStringToMap(String str) {
str = str.substring(1, str.length() - 1);
String[] strs = str.split(",");
Map<String, String> map = new HashMap<String, String>();
for (String string : strs) {
String key = string.split("=")[0].trim();
String value = string.split("=")[1];
map.put(key, value);
}
return map;
}

测试,将格式为 {a=1, b=2, c=3} 的字符串转为map使用:

public static void main(String[] args) {
String s ="{a=1, b=2, c=3}";
Map<String, String> tranMap = mapStringToMap(s);
System.out.println("a:"+tranMap.get("a"));
System.out.println("b:"+tranMap.get("b"));
System.out.println("c:"+tranMap.get("c"));
}

结果:

Java 将Map的toString格式字符串转为 Map_java