Android Gson中的Map與JSON相互切換

源:

 

{
    "mapBean": {
        "mapBean-key1": {
            "id": "1",
            "name": "cyy1"
        },
        "mapBean-key2": {
            "id": "2",
            "name": "cyy2"
        }
    },
    "mapString": {
        "mapString-key1": "values1",
        "mapString-key2": "values2"
    }
}


解析Bean:

 

 

public static class Bean{
    private String id;
    private String name;
    
    public Bean(){
        
    }
    public Bean(String id, String name){
        this.id = id;
        this.name = name;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

public static class BeanMap{
   private  Map<String, String> mapString;
    private  Map<String, Bean> mapBean;

    public Map<String, String> getMapString() {
        return mapString;
    }

    public void setMapString(Map<String, String> mapString) {
        this.mapString = mapString;
    }

    public Map<String, Bean> getMapBean() {
        return mapBean;
    }

    public void setMapBean(Map<String, Bean> mapBean) {
        this.mapBean = mapBean;
    }
}

生成:

 

 

Map<String, String> mapString = new HashMap<>();
Map<String, Bean> mapBean = new HashMap<>();

mapString.put("mapString-key1", "values1");
mapString.put("mapString-key2", "values2");
mapBean.put("mapBean-key1", new Bean("1", "cyy1"));
mapBean.put("mapBean-key2", new Bean("2", "cyy2"));

BeanMap beanMap = new BeanMap();
beanMap.setMapBean(mapBean);
beanMap.setMapString(mapString);

LogUtil.i("test-map", JsonUtil.toJson(beanMap));

 

 

 

發佈了68 篇原創文章 · 獲贊 58 · 訪問量 43萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章