0

我正在使用嵌套的两个字符串的 String 和 Hashmap 集合到 Arraylist 中,并使用 baseadapter 将一些数据填充到 listview 中。我想从 HashMap 中获取两个字符串。

代码在这里:

1)

ArrayList<HashMap<String, HashMap<String, String>>> Menu = new ArrayList<HashMap<String, HashMap<String, String>>>();

2)

HashMap<String,HashMap<String,String>> mainMenu = new HashMap<String, HashMap<String,String>>();

3)

 HashMap<String,String> subMenu = new HashMap<String,String>();

                for (int k = 0; k < jsonsubmenu.length(); k++) {
                    // get all values from jsonsubmenu JSONArray..
                    String submenuname = jsonsubmenu.optString(k);
                    String price = jsonpeicemenu.optString(k);

                    subMenu.put(submenuname, price);


                }

                mainMenu.put(mainmenu, subMenu);

                Menu.add(mainMenu);

4)

MenuAdapter menuAdapter = new MenuAdapter(
                        RestaurantDetails.this.getParent(), Menu);

                list.setAdapter(menuAdapter);

上面的代码片段显示了集合使用全流程的含义。我使用下面的语句从选定的位置选择数据,但这些语句不值得。请建议我如何在选定位置获取数据。

Stringn menu = Menu.get(position).get(TAG_MENUNAME);
String cost = Menu.get(position).get(TAG_PRICE);
4

1 回答 1

2

我想你想要:

String cost = Menu.get(position).get(TAG_MENUNAME).get(TAG_SUBMENU);
于 2013-05-31T14:10:14.163 回答