如果应用程序是单线程的,请使用HashMap
。您可以“嵌套”HashMap
,例如HashMap<String, HashMap<Integer, HashMap<Integer, HashMap<String, Item>>>>
。请参阅this question以了解如何迭代HashMap
。
下面是仅使用两个嵌套给你的想法一些示例代码:
HashMap<String, HashMap<Integer, HashMap<Integer, HashMap<String, String>>>> map1 = new HashMap<String, HashMap<Integer, HashMap<Integer, HashMap<String, String>>>>();
map1.put("Computers", new HashMap<Integer, HashMap<Integer, HashMap<String, String>>>());
map1.get("Computers").put(2011, new HashMap<Integer, HashMap<String, String>>());
map1.get("Computers").get(2011).put(2, new HashMap<String, String>());
不相关:它应该是“学期”,而不是“Semister” – Nishant 2011-01-09 16:47:38
@Nishant是啊,正确...... :) – sasidhar 2011-01-09 18:01:06
这是一个JavaScript的GUI,如extJS或GWT?你的数据库泄露给客户一个问题?数据库很慢?你在使用ORM吗?你打算使用一个吗?是否有任何复杂的业务逻辑需要在Java级别上完成?验证呢?我会试图回答*“无”*作为最好的数据结构。数据库调用这些信息的速度似乎不太可能,如果数据*“极不可能改变”*,那么像Hibernate这样的ORM将非常轻松地为您缓存所有这些信息。要么你有一个数据库,但用Java复制它并不聪明。 – SyntaxT3rr0r 2011-01-09 18:37:42