Java查询数据库得出临时表如图1,后台代码得到List结果集[{"d":27,"Elem":"2"},{"d":27,"Elem":"2"},{.....}]我想实现的是:将d(日期)相同的作为一个日期放入map,将相同d所对应的Elem一个一个放入ArrayList,不同的d对应的Elem放入不同的ArrayList2,3.....
实在不好意思没币了,请大神!!!!
1.遍历List,ArrayListpublic static void print(List list) {
Iterator itr = list.iterator();
while (itr.hasNext()) {
System.out.print(itr.next());
System.out.print(", ")......
答案就在这里:List,ArrayList,Map循环遍历
----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。
那你就可以使用hash map 这个存储键值对的Java工具类了,key就是你的日期,value值为一个arraylist。例如定义Map<String, List<String>>map=new HashMap<String, List<String>>;判断某个时期是否在map中,如果不在就新建一个列表存储这个日期对应的值,然后以日期为key,列表为值放入map中;如果存在的话就取出原来的列表将值加入列表中。由于没有电脑,就先给个思路你先试试自己写,其实不复杂的,有问题再沟通。
我想到的办法是使用sql语句将d相同的进行分组,也就是分组查询:select * from 表名 group by d
上面的sql语句返回的是根据d进行的分组查询,然后d=27下面存在2,3;d=22下面存在2;d=23下面存在3
我只是提供思路你可以去尝试一下