0
我有一个表如下迭代通过多维数组列表以HashMap的Java中
Total Upright Supine Meal PostPr ChestP Other
Duration of Period 22:38 14:30 08:08 01:02 06:54 00:48 00:28
Number of Refluxes 5 4 1 0 3 2 0
从这个我已经创建了一个多维数组Arr_ReflDay1_table2d
如下:
[[Total, Upright, Supine, Meal, PostPr, ChestP, Other], [Duration of Period , 22:38, 14:30, 08:08, 01:02, 06:54, 00:48, 00:28], [Number of Refluxes, 5, 4, 1, 0, 3, 2, 0]]
我想它变成HashMap使得Key是值来自的行和列名称。例如HashMap的可能是:
Total_DurationOfPeriod=22:38,Upright_DurationOfPeriod=14:30,Supine_DurationOfPeriod=08:08
等
我试着这样做:
Map<String,String> mapReflDay1= new LinkedHashMap<String,String>();
ArrayList<List<String>> Arr_ReflDay1_table2d = new ArrayList<List<String>>();
for (int ff=0;ff<Arr_ReflDay1_table2d.size();ff++){
for (int fg=0;fg<Arr_ReflDay1_table2d.size();fg++){
for (int fx=0;fx<Arr_ReflDay1_table2d.get(0).size();fx++){
mapReflDay1.put("ReflDay1"+Arr_ReflDay1_table2d.get(0).get(ff)+Arr_ReflDay1_table2d.get(fg).get(0)+","Arr_ReflDay1_table2d.get(ff).get(fx));
}
}
}
这给钥匙不错,但价值似乎只能从最后一列采取
为什么不使用类和对象,实际类型而不是字符串?一切都会变得更清晰和更安全。我看到一个类有两个字段(持续时间,类型为持续时间,类型为int的refluxCount)的分析,以及7个类型为分析的变量,名为总数,直立等。不使用字符串,数组和地图来对所有内容建模。 Java是一种OO强类型语言。使用适当的类型,并定义类。 –
我刚刚展示了MCVE。 ArrayList是键入的。我已经添加并删除了字符串。 –
最终解决了它。刚刚向第一个内部ArrayList添加了一个额外的元素,所以我正在遍历每个内部ArrayList中相同数量的元素 –