前提,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")); }
结果: