0
我有一张表,显示了一个字幕结构,该字幕结构以1,2,3的正确顺序排序..... TitleID是唯一的。如何将字幕结构的列表<String[]>转换为HashMap <String,List <String[]>>
TitleID - Title - Level - Order 451 - History - Level1 - 1 123 - History of America - Level2 - 2 465 - History of Cali - Level3 - 3 578 - History of NewYork - Level3 - 4 765 - History of Europe - Level2 - 5 754 - History of West Europe - Level3 - 6
此表被转换成{"451", "History", "Level1", "1" }
,{"123", "History of America", "Level2", "2" }
一个List<String[]>
...也是一个正确的顺序。我想将List<String[]>
转换为HashMap<String, List<String[]>>
。如果我做手工,它应该是这样的:
HashMap<String, List<String[]>> titleHashMap = new HashMap<String, List<String[]>>();
List<String[]> subTitleList=new ArrayList<String[]>;
String[] titles1={"123", "History of America", "Level2"};
subTitleList.add(titles1);
String[] titles12={"765", "History of Europe", "Level2"};
subTitleList.add(titles12);
titleHashMap.put("451", subTitleList);
List<String[]> subTitleList2=new ArrayList<String[]>;
String[] titles2={"465", "History of Cali" , "Level3"};
subTitleList2.add(titles2);
String[] titles21={"578", "History of NewYork", "Level3"};
subTitleList2.add(titles21);
titleHashMap.put("123", subTitleList2);
但我不想做手工,所以如何自动做呢? 注意:我也想要一个所有Level1父级的根级别。例如,titleHashMap.put("root", subTitleListOfLevel1);
在'for-each'循环中执行此操作。 –
如果字符串数组的大小:“{”123“,”美国历史“,”Level2“}'是有限的,只反映了一些属性,为什么不用OOP风格? – Sage
更复杂 – Tum