情景:
今天在调试接口时要向服务器发送请求传参,需将一个List<Map<String,String>>类型换成json格式;
造*:
想起以前有做过类似的功能,是java基础的拼接,一时犯了懒,不想再造个*,于是随手翻了翻以前的项目,开始找*了
在这里把*贴出来,以后再用的话就不用翻啦,有用到的朋友也可以直接拿走稍作修改就可以使用。
private String listToString(Map<String, String> mapDemo) { List<Map<String, String>> listMaps = new ArrayList<>();//初始化一个容器 listMaps.add(mapDemo);//向容器里添加数据,生产List<Map<String,String>>类型 Log.e("onClick: maps", listMaps.toString());//打印log放便查看要转换的数据 StringBuilder sb = new StringBuilder();//用了stringbuffer,效率快,但是线程不安全的 sb.append("["); for (Map<String, String> map : listMaps) {//这里用了增强for遍历 for (String key : map.keySet()) { //根据不同需求,拼接数据 sb.append("{").append("\"").append(key).append("\":\"").append(map.get(key)) .append("\"").append("}").append(","); } } sb.deleteCharAt(sb.lastIndexOf(",")); sb.append("]"); Log.e("onClick: sb", sb.toString());//看看结果是不是自己想要的 return sb.toString();//返回需要的结果 }
如有不足,还请多指正。