如何在改进后发布请求中传递嵌套数组。数组是这样的:
"bags": "[[7, 1], [8, 1], [9, 1]]"
Tried List,Map也是JsonObject和JsonArray,但没有运气。
我必须迭代一个CarryBag类的List。下面是一个CarryBag类,必须创建一个这样的格式" bags":" [[7,1],[8,1],[9,1]]"`其中第一个元素是carryBagId,第二个元素是购买数量。
public class CarryBag {
@SerializedName("carry_bag_id")
private String carryBagId;
@SerializedName("vendor_id")
private String vendorId;
@SerializedName("bag_name")
private String bagName;
@SerializedName("bag_size")
private String bagSize;
@SerializedName("status")
private String status;
@SerializedName("BAG_ID")
private String bagId;
@SerializedName("Name")
private String name;
@SerializedName("Price")
private String price;
@SerializedName("Qty")
private int purchaseQty;
}
答案 0 :(得分:0)
class MyBag{
List<List<Integer>> bags;
}
String data = "{\"bags\":[[7, 1],[8, 1], [9, 1]]}";
Gson gson = new Gson();
MyBag bagList = gson.fromJson(firstData, MyBag.class);
传递bagList以进行改造
答案 1 :(得分:0)
你的json结构有嵌入式数组。所以尝试使用以下代码。
try {
JSONArray bags = new JSONArray(jsonObj.getJSONArray("bags"));
for (int i = 0; i < bags.length(); i++) {
JSONArray jsonArray = bags.getJSONArray(i);
for (int j = 0; j < jsonArray.length(); j++) {
Log.i(TAG, "VALUES: ["+i+","+j+"]" +jsonArray.getInt(j));
}
}
} catch (JSONException e) {
e.printStackTrace();
}