Java 如何通过改装发送带有键值对的数组数组
这是我想发送的改装请求,有什么想法吗Java 如何通过改装发送带有键值对的数组数组,java,android,arrays,post,retrofit,Java,Android,Arrays,Post,Retrofit,这是我想发送的改装请求,有什么想法吗 "quiz_data" : [ ['question_id' => 1, 'option_id' => 2], ['question_id' => 2, 'option_id' => 3], ['question_id' => 3, 'option_id' => 2] ] 它必须是动态的,因为我不知道管理员会添加多少问答题。我认为您可以使用具有所需值的Map对象创建调用 @POST("{endpoint}") Cal
"quiz_data" : [ ['question_id' => 1, 'option_id' => 2], ['question_id' => 2, 'option_id' => 3], ['question_id' => 3, 'option_id' => 2] ]
它必须是动态的,因为我不知道管理员会添加多少问答题。我认为您可以使用具有所需值的Map对象创建调用
@POST("{endpoint}")
Call<Void> sendData(@Body Map<QuestionID,OptionID> dataToBeSend);
@POST(“{endpoint}”)
调用sendData(@Body-Map-dataToBeSend);
更多信息请查看keep coding。尝试此代码
ArrayList<ArrayList<HashMap<String, String>>> hashMapArrayList1 = new ArrayList<>();
ArrayList<HashMap<String, String>> hashMapArrayList2 = new ArrayList<>();
for (int i = 0; i < yourlist.size(); i++) {
try {
HashMap<String, String> hs = new HashMap<>();
hs.put("question_id", "" + yourlist.get(i).getQueId().trim());
hs.put("option_id", "" + yourlist.get(i).getOptionId().trim());
hashMapArrayList2.add(hs);
} catch (Exception e) {
e.printStackTrace();
}
}
hashMapArrayList1.add(hashMapArrayList2);
paramas.put("quiz_data", hashMapArrayList1);
ArrayList HashMapArrayList 1=新建ArrayList();
ArrayList HashMapArrayList 2=新的ArrayList();
对于(int i=0;i
直接映射不起作用,因为我们有一系列映射。mapI没有直接尝试制作这种格式,现在只需将hashmap对象替换为数组elearning\u id=1&quick\u data=[{option\u id=2,question\u id=1},{option\u id=6,question\u id=2},{option\u id=10,question\u id=3}]
刚刚发现我们无法在java中创建关联数组,所以这个答案是最接近的,也是正确的,它将被标记为答案。