List<Map>去重排序

数据格式

[
{
"id":"d3e8a9d6-e4c6-4dd8-a94f-07733d3c1b59",
"parentId":"6d460008-38f7-479d-b6d1-058ebc17dae3",
"myorder":1,
"name":"任务一"
},
{
"id":"6d460008-38f7-479d-b6d1-058ebc17dae3",
"parentId":"33978737-c722-4339-88a1-a9829dd4bca2",
"myorder":1,
"name":"项目一"
},
{
"id":"33978737-c722-4339-88a1-a9829dd4bca2",
"parentId":"5461ed61-543c-4ea1-9cb5-17b008e093a0",
"myorder":1,
"name":"课题一"
},
{
"id":"5461ed61-543c-4ea1-9cb5-17b008e093a0",
"parentId":"57e06272-eab4-4920-ae6a-25e055374851",
"myorder":1,
"name":"电子教案"
},
{
"id":"8d0723db-9087-4c83-8d0e-ab7f24ddf066",
"parentId":"6d460008-38f7-479d-b6d1-058ebc17dae3",
"name":"任务二",
"myorder":2
}
]
 1 //去重复的
 2
 3 for ( int i = 0 ; i < newList.size() - 1 ; i ++ ) {
 4 for ( int j = newList.size() - 1 ; j > i; j -- ) {
 5 if (newList.get(j).equals(newList.get(i))) {
 6 newList.remove(j);
 7 }
 8 }
 9 }
10
11
12
13 //排序
14 this.sort(newList);
15
16 myorder为排序号
17
18 public void sort(List<Map<String, Object>> list) {
19 Collections.sort(list, new Comparator<Map<String, Object>>(){
20 public int compare(Map<String, Object> o1, Map<String, Object> o2) {
21 return (Integer)o1.get("myorder")>(Integer)o2.get("myorder")?1:( (Integer)o1.get("myorder")==(Integer)o2.get("myorder")?0:-1);
22 }
23 });
24 }
时间: 2024-11-05 18:26:51

List<Map>去重排序的相关文章

去重+排序板子(set+map)

题意: 给定n个数,去重排序后输出个数和每个数 1.map实现 #pragma GCC optimize("O2") #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #include<queue> #include<stack> #include<set> #i

数组去重排序

总时间限制:  1000ms  内存限制:  1000kB 描述 小吉是银行的会计师,在处理银行帐目的时候,遇到了一些问题.有一系列整数,其中含有重复的整数,需要去掉重复后,排序输出,你能帮助小吉解决问题吗? 输入 输入数据共2行,第一行输入测试数据个数n,第二行输入这n个整数,整数之间可能有重复,整数之间可能有若干个空格.n <= 105,所有的整数不超过104. 输出 输出为1行,是这n个数去重后从小到大的排序. 样例输入 3 4 4 2 样例输出 2 4 + ? #include <io

java如何对map进行排序详解(map集合的使用)

今天做统计时需要对X轴的地区按照地区代码(areaCode)进行排序,由于在构建XMLData使用的map来进行数据统计的,所以在统计过程中就需要对map进行排序. 一.简单介绍Map 在讲解Map排序之前,我们先来稍微了解下map.map是键值对的集合接口,它的实现类主要包括:HashMap,TreeMap,Hashtable以及LinkedHashMap等.其中这四者的区别如下(简单介绍): HashMap:我们最常用的Map,它根据key的HashCode 值来存储数据,根据key可以直接

算法实战:根据Key或Value对Map进行排序及其应用

摘要: 我们知道,Map是 Java Collection Framework 的重要成员,也是我们最常用的容器类之一.Map的实现多种多样,包括HashMap.LinkedHashMap等.但是,无论实际中使用哪种实现,我们在编程过程中常常会遇到诸如根据Key或Value对Map进行排序.保持Map插入顺序等问题,本文特别针对以上几个问题给出了具体解法,并分享华为一道与我们主题极为相关的笔试题. 版权声明: 本文原创作者:书呆子Rico 作者博客地址:http://blog.csdn.net/

Java语言利用Collections.sort对Map,List排序

1.main方法包含TreeMap排序1,TreeMap排序2,HashMap排序,List<Integer>排序,List<Bean>排序,List<Map>排序 package com.tao.test; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.HashMap; import java.util.Li

【java】关于Map的排序性的一次使用,有序的Map

关于Map的排序性的一次使用,有序的Map >>>>> hashmap是按key的hash码排序的,而treemap是利用comparator 进行key的自然排序的 /** * 根据商品分类ID * 获取长编码,拿到向上的所有父级商品分类ID * * 根据parentUidList 获取 parentList * * 迭代parentUid 根据uid 获取在有序List中的 下标 * * 按照[k:v][下标:具体信息] * 放入TreeMap 即得到有序的父层商品分类层

java8新特性:对map集合排序

一.简单介绍Map 在讲解Map排序之前,我们先来稍微了解下map.map是键值对的集合接口,它的实现类主要包括:HashMap,TreeMap,Hashtable以及LinkedHashMap等.其中这四者的区别如下(简单介绍): HashMap:我们最常用的Map,HashMap是无序的,它根据key的HashCode 值来存储数据,根据key可以直接获取它的Value,同时它具有很快的访问速度.HashMap最多只允许一条记录的key值为Null(多条会覆盖);允许多条记录的Value为

Map去重,去重value相同的元素,保留key最小的那个值

Map<Integer,String>,Integer代表时间撮,String代表文本信息去重函数:就是删除Map中value相同的元素,只保留key最小的那个元素 public static Map<Integer,String> RemoveRepFromMap(Map<Integer,String> map){ Set<Entry<Integer,String>> set = map.entrySet(); List<Entry<

对map进行排序

public class TreeMapTest {    public static void main(String[] args) {        Map<String, String> map = new TreeMap<String, String>(                new Comparator<String>() {                    public int compare(String obj1, String obj2