Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/187.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android中嵌套HashMap的创建_Java_Android_Hashmap - Fatal编程技术网

Java Android中嵌套HashMap的创建

Java Android中嵌套HashMap的创建,java,android,hashmap,Java,Android,Hashmap,在我的应用程序中,我有3个包含ListView的选项卡,具体取决于之前选项卡中的选择。基本上,第一个选项卡将列出餐厅,第二个选项卡将列出所选餐厅的子菜单,第三个菜单将列出所选子菜单中的项目,然后当选择某个项目时,它将显示有关该项目的一些营养信息。我不知道组织餐厅/子菜单/项目的最佳方式,但我当时的想法是一个嵌套的HashMap,如下所示 HashMap<String, HashMap<String, HashMap<String, Double[]>>> H

在我的应用程序中,我有3个包含ListView的选项卡,具体取决于之前选项卡中的选择。基本上,第一个选项卡将列出餐厅,第二个选项卡将列出所选餐厅的子菜单,第三个菜单将列出所选子菜单中的项目,然后当选择某个项目时,它将显示有关该项目的一些营养信息。我不知道组织餐厅/子菜单/项目的最佳方式,但我当时的想法是一个嵌套的HashMap,如下所示

HashMap<String, HashMap<String, HashMap<String, Double[]>>>
HashMap
我不知道怎么做,就是高效地构建这个地图,在那里可以方便地在将来添加/删除东西。我正在研究xml,但我不知道如何实现它。如果我这样做的话,我还需要帮助编写Java代码,通过xml进行解析,并将其放在地图中的正确位置。我不确定您是否需要使用标记,或者您是否可以使用一个利用map的xml文件,然后将其“导入”到您的java项目中。我不认为用Java硬编码每一项都会非常有效,所以我希望能得到一些帮助

可能,像这样?没有完全填写,但我真的不知道我在做什么

<?xml version="1.0" encoding="UTF-8"?>
<util:map name="foodmapping">
 <restaurant key="McDonalds">
  <util:map>

  </util:map>"

 </restaurant>
 <restaurant key="Starbucks">
  <value>2
  </value>
 </restaurant>
</util:map>

"
2.

这可能不是特定于andriod的。我不知道android,但知道我用于嵌套hashmaps的基本原理。初始化应该是嵌套最远的第一个

我可能没有最好的答案。我不擅长解释。但这里有一个代码示例。 注意:这可能不适用于android,因为我说过我从未使用过android。这是基本的java代码

HashMapexample1=newhashmap();
//Init应该是最远的。
HashMapFarthest=新HashMap();
//这将启动中间层。
HashMapmiddle=新的HashMap();
//现在已经完成了。我们可以加载值了
中间。放(“第一”,最远);
//现在,middle加载了基本启动。
例1.放在第一位,中间;
//现在,这个初始化示例已经完成。
示例1.get(“first”).get(“first”).put(“lowestSecond”,这里的某个对象*/);//这是一个如何将更多数据放入最底层的示例。

我不认为这是最好的答案。但这是我用来启动多级hashmap的基本代码。

“我不知道组织餐厅/子菜单/项目的最佳方式,但我当时的想法是一个嵌套的hashmap,如下所示。“--为什么不使用数据库?@commonware:我对Android还是新手,所以我认为使用一些熟悉的东西,比如HashMap(接近Python中的字典)会更容易。你有关于使用SQLite数据库的好教程吗?