微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android 传递json数组

Android开发中,我们常常需要将JSON数组作为数据源传递给后台或前端,请看以下示例:

[
    {
        "name": "张三","age": 20,"hobbies": ["reading","running"]
    },{
        "name": "李四","age": 25,"hobbies": ["swimming","traveling"]
    }
]

android 传递json数组

在Android中,我们可以使用JSONObject和JSONArray类来构建和解析JSON数组。以下是JSON数组的构建示例:

JSONArray jsonArray = new JSONArray();

JSONObject jsonObject1 = new JSONObject();
jsonObject1.put("name","张三");
jsonObject1.put("age",20);
JSONArray hobbies1 = new JSONArray();
hobbies1.put("reading");
hobbies1.put("running");
jsonObject1.put("hobbies",hobbies1);
jsonArray.put(jsonObject1);

JSONObject jsonObject2 = new JSONObject();
jsonObject2.put("name","李四");
jsonObject2.put("age",25);
JSONArray hobbies2 = new JSONArray();
hobbies2.put("swimming");
hobbies2.put("traveling");
jsonObject2.put("hobbies",hobbies2);
jsonArray.put(jsonObject2);

以上示例中,我们先创建一个空的JSON数组,然后构建两个学生的JSON对象,分别将它们添加到JSON数组中。

接下来是将JSON数组作为数据源传递的示例:

String url = "http://www.example.com/data";
StringRequest request = new StringRequest(Request.Method.POST,url,new Response.Listener() {
            @Override
            public void onResponse(String response) {
                // 处理响应
            }
        },new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                // 处理错误
            }
        }) {
    @Override
    public byte[] getBody() throws AuthFailureError {
        return jsonArray.toString().getBytes();// 将JSON数组转为字节数组
    }

    @Override
    public Map getHeaders() throws AuthFailureError {
        Map headers = new HashMap();
        headers.put("Content-Type","application/json; charset=utf-8");// 指定请求头为JSON格式
        return headers;
    }
};
queue.add(request);// 将请求加入请求队列

以上示例中,我们使用Volley库创建了一个POST请求,并将JSON数组作为请求体发送给后端。

通过以上示例,我们可以看出Android开发中传递JSON数组的方式非常简单。只要使用JSONObject和JSONArray类创建和解析JSON数组,再将其转为字节数组作为请求体发送即可。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐