我正在尝试为商店制作目录。为此,我有一个2D数组:
String childElements[][] = new String[][];
我想将数据添加到此数组中。数据是另一个数组:
ArrayList<String> names = new ArrayList<String>();
names
可能因我得到的输入而异。
例如,如果是家具店,则类别将为Tables
,Chairs
等。
我将我的类别存储在另一个数组中,类似于:
String groupElements[] = {"Tables", "Chairs"};
names
包含:{"Wood", "Metal", "4-seater", "6-seater"}
所以,我想让childElements
数组反映出来:
childElements = ["Chairs"]["Wood", "Metal"]
["Tables"]["4-seater"]["6-seater"]
那么如何插入数据以满足我的需求?
我想坚持使用一组数组而不是list
或hashmap
,因为架构依赖于它。
答案 0 :(得分:1)
正如@Dude建议使用HashMap,它将帮助您更轻松地组织事情。因此,在您的情况下,类别将是键,值将是数组。
// create map to store
Map<String, List<String>> map = new HashMap<String, List<String>>();
// create list one and store values
List<String> chairs = new ArrayList<String>();
chairs.add("Wood");
chairs.add("Metal");
// create list two and store values
List<String> tables = new ArrayList<String>();
tables.add("4-seater");
tables.add("6-seater");
// put values into map
map.put("Chairs", chairs);
map.put("Tables", tables);
// iterate and display values
System.out.println("Fetching Keys and corresponding [Multiple] Values");
for (Map.Entry<String, List<String>> entry : map.entrySet()) {
String key = entry.getKey();
List<String> values = entry.getValue();
System.out.println("Key = " + key);
System.out.println("Values = " + values);
}