我想创建一个自定义集合,例如:
{"2011-10-27": {object1 , object2 , ...} , "2011-10-28" : {object n , object n+1 , ..}}
对于这件事,我认为arraylist可以满足我的要求,但我不知道如何在java中实现嵌套的arraylist。
如果你认为我的目的是arraylist不适合我必须在java中使用什么样的集合?
问候。
答案 0 :(得分:3)
考虑使用Map
,您可以在其中存储键值对。请参阅Map javadoc。
答案 1 :(得分:1)
您正在寻找的是Map
:
Map<Date, Set<Object>> map = new HashMap<Date, Set<Object>>();
map.put(new Date(), new HashSet<Object>(Arrays.asList(1,2,3)));
答案 2 :(得分:1)
您展示的内容更像是列表地图:
Map<String,List>> map = new HashMap<String,List>>();
然后你可以用:
填充每一个List list = new ArrayList();
list.add(object1);
map.put("2001-01-10",list);
答案 3 :(得分:0)
我认为您要找的是Map
存储String
作为键,每个键映射到ArrayList
。
Map<String,ArrayList> mp=new HashMap<String, ArrayList>();
ArrayList<String>newarray = new ArrayList<String>();
newarray.add("hello");
mp.put("2011-10-97", newarray);
根据您要在ArrayList
中存储的对象类型,您可以相应地更改类型,我将其保留为String
。
答案 4 :(得分:0)
HashMap<String, ArrayList<Object>> myMap = new HashMap<String, ArrayList<Object>>();
ArrayList<Object> myList = new ArrayList<Object>();
myList.add(anObject);
myMap.put("2011-10-27", myList);
您还可以使用Date
代替字符串作为HashMap
密钥。
实际上,您可以使用实现Map
interface和List
或Set
接口的类的任意组合,而不是使用HashMap
和ArrayList
/ p>