Advertisement

Java中List数组和Map数组的排序问题:基于map的两个或多个字段

阅读量:

在实际工作中遇到一个具体需求,需要对list数组进行两次排序操作,首先依据相似度值进行排列,随后按照名称长度由高到低进行降序处理。

为实现该功能,采用了JAVA8的相关特性,现将相关实现过程记录如下:

无需过多解释,直接展示代码:

复制代码
 private List<Map<String, Object>> sortList(List<Map<String, Object>> list){

    
     return  list.stream().sorted(Comparator.comparing(AipClientController::comparingBySimilar).reversed()
    
             .thenComparing(Comparator.comparing(AipClientController::comparingByCommand).reversed()))
    
             .collect(Collectors.toList());
    
  }
    
    
    
    
复制代码
 //以相似度排序

    
 private static String comparingBySimilar(Map<String, Object> map){
    

全部评论 (0)

还没有任何评论哟~