Android 的Gson解析问题

public class DataEntity {
/**
* search_array : ["测试","解决"]
* hot_search : ["解决","测试","12","测试3","黄金"]
* major_search : ["专业搜索","专业搜索","专业搜索","专业搜索","专业搜索","专业搜索","专业搜索","专业搜索","专业搜索"]
*/
private List search_array;
private List hot_search;
private List major_search;

    public void setSearch_array(List<Search_arrayEntity> search_array) {
        this.search_array = search_array;
    }

    public void setHot_search(List<Hot_searchEntity> hot_search) {
        this.hot_search = hot_search;
    }

    public void setMajor_search(List<Major_searchEntity> major_search) {
        this.major_search = major_search;
    }

    public List<Search_arrayEntity> getSearch_array() {
        return search_array;
    }

    public List<Hot_searchEntity> getHot_search() {
        return hot_search;
    }

    public List<Major_searchEntity> getMajor_search() {
        return major_search;
    }

    public class Hot_searchEntity{
        public String getTdata() {
            return tdata;
        }

        public void setTdata(String tdata) {
            this.tdata = tdata;
        }

        private String  tdata;

    }
    public  class Search_arrayEntity{
        public String getData() {
            return data;
        }

        public void setData(String data) {
            this.data = data;
        }

        private String data;
    }
    public class Major_searchEntity{
        public  String data1;


        public String getDatat() {
            return data1;
        }

        public void setDatat(String data1) {
            this.data1 = data1;
        }
    }
}


    这样写实体类对吗?


      JsonException.JSON_TYPE json_type=JsonException.getJSONType(jsonObject.optString("data"));
                    if(json_type.equals(JsonException.JSON_TYPE.JSON_TYPE_ARRAY)){
                       SearchBean searchBean=new Gson().fromJson(s, new TypeToken<SearchBean>(){}.getType());
                        searchView.getSuccess(searchBean);
                        Log.e("GGG","arry");
                    }else if(json_type.equals(JsonException.JSON_TYPE.JSON_TYPE_OBJECT)){
                     SearchBean  searchBean=new Gson().fromJson(s,SearchBean.class);
                        searchView.getSuccess(searchBean);

            报错信息如下:
               com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 38 path $.data.search_array[0]

/**

  • search_array : ["测试","解决"]
  • hot_search : ["解决","测试","12","测试3","黄金"]
  • major_search : ["专业搜索","专业搜索","专业搜索","专业搜索","专业搜索","专业搜索","专业搜索","专业搜索","专业搜索"] */ 你的JSON是这个么?

随便找个在线网站先校验下json是不是正确的