国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

java - list<Map<String, Object>> 排序

瀏覽:203日期:2023-11-17 09:54:03

問題描述

利用List<java.util.Map<String,Object>> charData = (List<java.util.Map<String, Object>>) map.get('data');

得到的chartData 為

[{TIME21=0, TIME22=2, TIME23=0, TIME12=0, TIME13=1, TIME10=0, TIME20=0, TIME11=1, TIME17=0, TIME9=2, TIME16=0, TIME15=0, TIME14=1, TIME5=0, TIME6=0, TIME19=0, TIME7=0, TIME18=1, TIME8=4, TIME1=0, TIME2=0, TIME3=0, TIME4=0, TIME0=0}]

現(xiàn)在要對(duì)她進(jìn)行排序,使其的順序?yàn)門IME1,TIME2.....這樣的順序 ,應(yīng)該怎么排序呢?

問題解答

回答1:

看問題應(yīng)該是對(duì)Map里面的key進(jìn)行排序,可以使用Treemap,因?yàn)榭磌ey的結(jié)構(gòu)是string+int,根據(jù)int排序,所以可能需要自己寫個(gè)比較器。大致的代碼,比較器寫的比較簡(jiǎn)單,就是拆了一下,可能需要根據(jù)你的實(shí)際情況調(diào)整

TreeMap<String,Object> treemap = new TreeMap<String,Object>( new Comparator<String>() { @Override public int compare(String o1, String o2) { Integer i1 = Integer.parseInt(o1.substring(4)); Integer i2 = Integer.parseInt(o2.substring(4)); return i1.compareTo(i2); } });treemap.put('TIME21',0);treemap.put('TIME11',0);treemap.put('TIME1',0);treemap.put('TIME2',0);回答2:

如非必須要使用Map,建議使用對(duì)象代替Map

List<Map<String, Object>> list = new ArrayList<>();Map<String, Object> map1 = new HashMap<>();Map<String, Object> map2 = new HashMap<>();Map<String, Object> map3 = new HashMap<>();map1.put('TIME1', 1);map2.put('TIME13', 2);map3.put('TIME15', 3);list.add(map3);list.add(map2);list.add(map1);System.out.println(list);list.sort(new Comparator<Map<String, Object>>() { @Override public int compare(Map<String, Object> o1, Map<String, Object> o2) {String s1 = '';for (String s : o1.keySet()) { s1 = s;}String s2 = '';for (String s : o2.keySet()) { s2 = s;}//獲取TIME字符串后面的數(shù)字Integer i1 = Integer.parseInt(s1.substring(4));Integer i2 = Integer.parseInt(s2.substring(4));return i1.compareTo(i2); }});System.out.println('--------------');System.out.println(list);

標(biāo)簽: java
主站蜘蛛池模板: 黄平县| 武陟县| 岢岚县| 随州市| 满洲里市| 长乐市| 景德镇市| 东光县| 大理市| 安吉县| 元阳县| 华坪县| 沭阳县| 静宁县| 广南县| 资中县| 富平县| 巴楚县| 紫金县| 芦山县| 舟山市| 克什克腾旗| 勐海县| 凤城市| 莲花县| 伊金霍洛旗| 延安市| 大石桥市| 漳浦县| 公安县| 曲松县| 桑日县| 金平| 天水市| 休宁县| 吴旗县| 浮山县| 阜新市| 即墨市| 新巴尔虎右旗| 安吉县|