一道面试题,恳求大家帮助

「已注销」 2019-07-24 10:20:17
题目:完成groupAndSort方法,对列表按照groupName分组,并对每个组内的数据按照value倒叙排序
public class A{
public String groupName;
public int value;
}

Map<String,List<A>> groupAndSort(List<A> list){


}
...全文
169 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
K G 2019-07-25
  • 打赏
  • 举报
回复
这不就是排序吗?你做个工具包,要怎样排调一下
散着步的码农 2019-07-24
  • 打赏
  • 举报
回复
    Map<String, List<A>> groupAndSort(List<A> list){
        Map<String,List<A>> map = new HashMap<>();
        for (A a : list) {
            List<A> aList = map.get(a.groupName);
            if(aList==null){
                aList = new ArrayList<>();
            }
            aList.add(a);
            map.put(a.groupName,aList);
        }
        for (String s : map.keySet()) {
            List<A> finalList = map.get(s);
            finalList.sort(new Comparator<A>() {
                @Override
                public int compare(A o1, A o2) {
                    return o1.value>o2.value?-1:1;
                }
            });
        }

        return map;
    }
benjor_ming 2019-07-24
  • 打赏
  • 举报
回复
Map<String, List<A>> collect = list.stream().sorted(Comparator.comparing(A::getValue)).collect(Collectors.groupingBy(A::getName));

51,408

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧