如何在android中使用截击发送ArrayList?

如何在android中使用截击发送ArrayList?,android,hashmap,android-volley,Android,Hashmap,Android Volley,如何在android中使用截击发送ArrayList, 如何在HashMap中使用ArrayList? 像Map我不知道如何在HashMap中使用ArrayList? 但是 对于使用截击发送ArrayList,您可以这样做 private void sendData(ArrayList list) throws JSONException { JsonObjectRequest jsonObjReq = new JsonObjectRequest(Request.Method.POS

如何在android中使用截击发送ArrayList, 如何在HashMap中使用ArrayList?
Map我不知道如何在HashMap中使用ArrayList?
但是
对于使用截击发送ArrayList,您可以这样做

 private void sendData(ArrayList list) throws JSONException {

    JsonObjectRequest jsonObjReq = new JsonObjectRequest(Request.Method.POST, YOUR_URL, setJsonObject(list)/*This is the function you need*/, new Response.Listener<JSONObject>() {

        @Override
        public void onResponse(JSONObject response) {


        }

    }, new Response.ErrorListener() {

        @Override
        public void onErrorResponse(VolleyError error) {
            VolleyLog.d(TAG, "Error: " + error.getMessage(),Toast.LENGTH_SHORT).show();

        }

    });

    RequestQueue requestQueue = Volley.newRequestQueue(LogInActivity.this);
    requestQueue.add(jsonObjReq);
}


//create json object that contain ArrayList contents  
private JSONObject setJsonObject(َArrayList list) throws JSONException {
    JSONObject jsonobject_one = new JSONObject();
    JSONArray jsonArray = new JSONArray();

    for(int i =0 ; i<list.size ; i++) {

    JSONObject jsonobject = new JSONObject();
    jsonobject .put("param"+i, list.get(i) );
    jsonArray.put(jsonobject);

    }

    jsonobject_one.put("params_array",jsonArray);
    return jsonobject_one;

}
private void sendData(ArrayList列表)抛出JSONException{
JsonObjectRequest JSONObjectReq=新的JsonObjectRequest(Request.Method.POST,您的URL,setJsonObject(list)/*这是您需要的函数*/,new Response.Listener(){
@凌驾
公共void onResponse(JSONObject响应){
}
},new Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误){
d(标记,“Error:+Error.getMessage(),Toast.LENGTH\u SHORT.show();
}
});
RequestQueue RequestQueue=Volley.newRequestQueue(LogInActivity.this);
add(jsonObjReq);
}
//创建包含ArrayList内容的json对象
私有JSONObject setJsonObject(َArrayList list)抛出JSONException{
JSONObject JSONObject_one=新的JSONObject();
JSONArray JSONArray=新的JSONArray();

对于(int i=0;i最后,我得到了一个最简单、最完美的解决方案:

使用此依赖项:

implementation 'com.google.code.gson:gson:2.8.2'
用这条线

String data = new Gson().toJson(myArrayList);
现在您可以将这个字符串作为字符串参数传递到截击中,如下面的示例所示

例如:

protected Map<String, String> getParams() {
                Map<String, String> params = new HashMap<>();
                String data = new Gson().toJson(myArrayList);
                params.put("keyName", data);
                return params;
            }
protectedmap getParams(){
Map params=新的HashMap();
String data=new Gson().toJson(myArrayList);
参数put(“键名”,数据);
返回参数;
}
为我工作