String转Map方法
很久没写java了,今天有个map传过来格式变成String了需要转map,本来应该可以找个简单的方式解决,但我就不相信找不到了,最后找了半天都没成功的。。。然后自己写了个小方法分享一下
仅限以下格式转map
{a=aaa, b=bbb, c=ccc, d=ddd, e=eee}
public static Map<String, Object> StringToMap(String param) {
Map<String, Object> map = new HashMap<>();
//去除{}
String s1 = param.replace("{", "");
String s2 = s1.replace("}", "");
String s3 = s2.trim();
//1.根据逗号分隔
String[] split = s3.split(",");
for (int i = split.length - 1; i >= 0; i--) {
String trim = split[i].trim();
String[] split1 = trim.split("=");
map.put(split1[0],split1[1]);
}
return map;
}
运行结果:
Map<String, Object> map1 = StringToMap(s);
System.out.println(map1);
System.out.println(map1.get("c"));
//输出:
{a=aaa, b=bbb, c=ccc, d=ddd, e=eee}
{a=aaa, b=bbb, c=ccc, d=ddd, e=eee}
ccc
Process finished with exit code 0