用Java编写地图数组

用Java编写地图数组,java,arrays,hashmap,Java,Arrays,Hashmap,我正在努力用Java编写一系列地图。 下面的伪代码演示了我要做的事情 Dim maparray(mapnumber) As Map Maparray(0) = Map1 Maparray(1) = Map2 等等。 在Java中如何实现这一点?我知道数组的大小,所以没有必要使用动态数组。 我当前的java代码如下: JSONArray activityjson = new JSONArray(jsonObject.getString("activity")); Map<String, S

我正在努力用Java编写一系列地图。
下面的伪代码演示了我要做的事情

Dim maparray(mapnumber) As Map
Maparray(0) = Map1
Maparray(1) = Map2
等等。 在Java中如何实现这一点?我知道数组的大小,所以没有必要使用动态数组。 我当前的java代码如下:

JSONArray activityjson = new JSONArray(jsonObject.getString("activity"));
Map<String, String> activity = new HashMap<String, String>();

for (int i = 0; i < activityjson.length(); i++) {
    JSONObject obj = (JSONObject) activityjson.get(i);

    activity.put("ID", obj.get("ActivityID").toString());
    activity.put("Name", obj.get("ActivityName").toString());
    activity.put("Desc", obj.get("ActivityDesc").toString());
    activity.put("Req", obj.get("ActivityReq").toString());
    activity.put("Start", obj.get("StartDate").toString());
    activity.put("End", obj.get("EndDate").toString());
    activity.put("Location", obj.get("Location").toString());
    activity.put("Points", obj.get("AwardPoints").toString());

}
JSONArray activityjson=newjsonarray(jsonObject.getString(“activity”);
映射活动=新建HashMap();
for(int i=0;i
在for循环内部的末尾,我想将活动的当前状态添加到maparray[I]。
谢谢8)

最好使用列表而不是数组

JSONArray activityjson = new JSONArray(jsonObject.getString("activity"));
  List<Map<String, String>> data = new ArrayList<Map<String, String>>();
  for (int i = 0; i < activityjson.length(); i++) {
    Map<String, String> activity = new HashMap<String, String>();
                            JSONObject obj = (JSONObject) activityjson.get(i);

                            activity.put("ID", obj.get("ActivityID").toString());
                            activity.put("Name", obj.get("ActivityName").toString());
                            activity.put("Desc", obj.get("ActivityDesc").toString());
                            activity.put("Req", obj.get("ActivityReq").toString());
                            activity.put("Start", obj.get("StartDate").toString());
                            activity.put("End", obj.get("EndDate").toString());
                            activity.put("Location", obj.get("Location").toString());
                            activity.put("Points", obj.get("AwardPoints").toString());
                            data.add(activity);
                        }
// now access activity.get(0), activity.get(1), ...
JSONArray activityjson=newjsonarray(jsonObject.getString(“activity”);
列表数据=新的ArrayList();
for(int i=0;i
您最好创建一个将所有这些键都作为属性的类,这样做会让您陷入一片头疼的混乱……我首先在代码中创建一个实际的HashMap数组。。。或者,实际上,我根本不使用Hashmap,而是使用Gson或JacksonI使用
data.get(1.get(“ID”).toString()从列表中检索数据,将JSON数组反序列化为Java对象列表。这正是我想要的。谢谢