迭代Hashmap并将值存储在变量中以供使用

时间:2015-05-05 10:26:36

标签: android mysql hashmap

您好我从MySQL数据库中检索了一些数据,然后将这些数据存储在Hashmap中。我还创建了一个与Hashmap具有相同变量的类。我想迭代Hashmap并存储值,以便我可以为每个对象使用它们。任何想法怎么做?

 public void updateJSONdata() {

cafebartablesList = new ArrayList<HashMap<String, Integer>>();  

JSONParser jParser = new JSONParser();

JSONObject json = jParser.getJSONFromUrl(READ_COMMENTS_URL);

try {

    cafebartables = json.getJSONArray(TAG_POSTS);


    for (int i = 0; i < cafebartables.length(); i++) {

        JSONObject c =cafebartables.getJSONObject(i);

        int tableId = c.getInt(TAG_TABLE_ID);
        int tableMarginLeft = c.getInt(TAG_MARGIN_LEFT);
        int tableMarginTop = c.getInt(TAG_MARGIN_TOP);
        int isFree = c.getInt(TAG_ISFREE);

        map = new HashMap<String, Integer>();

        map.put(TAG_TABLE_ID, tableId);
        map.put(TAG_MARGIN_LEFT, tableMarginLeft);
        map.put(TAG_MARGIN_TOP, tableMarginTop);
        map.put(TAG_ISFREE, isFree);

        cafebartablesList.add(map);


    }

} catch (JSONException e) {
    e.printStackTrace();
}
}

public  void printMap() {
LoadMap ld = new LoadMap();

ld.execute();

}

public class LoadMap extends AsyncTask<Void, Void, Boolean> {

@Override
protected Boolean doInBackground(Void... arg0) {
    updateJSONdata();
    return null;
}

@Override
protected void onPostExecute(Boolean result) {
    super.onPostExecute(result);

}
}
}

1 个答案:

答案 0 :(得分:-1)

你为什么要这样做?你让自己的生活变得困难。每个JSONObject后面都有一个LinkedHashMap,所以只需按原样使用JSONObject,无需任何转换。即,改为使用ArrayList<JSONObject>