Map<String, String>转String后,转回Map

public 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];
      String value=string.split("=")[1];
      value = value.trim();
      key = key.trim();
      map.put(key, value);
    }
    return map;
  }

多了不说
今天在网上找的别人的,还原后总是有bug。找了俩小时。是空格的原因。
现在代码是可行的了
测试如下:

public  static void main(String[] args){
    Map<String,String> message=  new HashMap<String, String>();
    message.put("a","ds");
    message.put("njdcnd","848ej");
    String old = message.toString();//
    Map<String,String> now = mapStringToMap(old);
    System.out.println("还原后");
    System.out.println(now);
    System.out.println("是否相等");
    System.out.println(now.toString().equals(old));
  }

posted @ 2021-12-11 00:06  Mr小明同学  阅读(791)  评论(0编辑  收藏  举报