日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

java Collections 排序--多條件排序實例

瀏覽:25日期:2022-08-24 15:14:07

我就廢話不多說了,大家還是直接看代碼吧~

// 告警排序Collections.sort(domesticAirport, comparator);// 告警排序Comparator<AirportRtWeatherWarningBeanForTable> comparator = new Comparator<AirportRtWeatherWarningBeanForTable>() {@Overridepublic int compare(AirportRtWeatherWarningBeanForTable a1, AirportRtWeatherWarningBeanForTable a2) { // 首先根據是否過期排序 if(a1.isMetarExpired() && !a2.isMetarExpired()){return 1; }else if (!a1.isMetarExpired() && a2.isMetarExpired()) {return -1; } else if ((a1.isMetarExpired() && a2.isMetarExpired()) || (!a1.isMetarExpired() && !a2.isMetarExpired())) {//同時過期,或者都不過期,則按告警類型排序if (a1.getWarningColor() != a2.getWarningColor()) { return compareColor(a1.getWarningColor(), a2.getWarningColor());} } //告警類型相同,按字母排序 return a1.getCode4().compareTo(a2.getCode4()); } }; // 告警類型比較排序 public int compareColor(Color color1, Color color2) { int i = 0; int j = 0; if (color1.equals(MeteoWeatherWarningPanel.RED)) { i = 3; } else if (color1.equals(MeteoWeatherWarningPanel.YELLOW)) { i = 2; } else if (color1.equals(MeteoWeatherWarningPanel.GREEN)) { i = 1; } if (color2.equals(MeteoWeatherWarningPanel.RED)) { j = 3; } else if (color2.equals(MeteoWeatherWarningPanel.YELLOW)) { j = 2; } else if (color2.equals(MeteoWeatherWarningPanel.GREEN)) { j = 1; } int k = i - j; if (k > 0) { return -1; } else if (k < 0) { return 1; } else return 0; }

補充知識:Collections.sort多字段排序-指定排序方式-指定排序字段

看代碼吧~

1、創建需要排序的字段數組

String [] sortNameArr = {“one”, “tow”,“startDate”};

2、為每個字段執行排序規則

boolean[] isAs = {false, false, false};

3、重寫sort方法進行排序

ListUtils.sort(list, sortNameArr, isAs);

public static <E> void sort(List<E> list, final String[] sortnameArr, final boolean[] typeArr) { if (sortnameArr.length != typeArr.length) { throw new RuntimeException('屬性數組元素個數和升降序數組元素個數不相等'); } Collections.sort(list, new Comparator<E>() { public int compare(E a, E b) {int ret = 0;try { for (int i = 0; i < sortnameArr.length; i++) { ret = ListUtils.compareObject(sortnameArr[i], typeArr[i], a, b); if (0 != ret) { break; } }} catch (Exception e) { e.printStackTrace();}return ret; } }); } private static <E> int compareObject(final String sortname, final boolean isAsc, E a, E b) throws Exception { int ret; Object value1 = ListUtils.forceGetFieldValue(a, sortname); Object value2 = ListUtils.forceGetFieldValue(b, sortname); // 兩個字段都不為空進行排序 if (null != value1 && null != value2) { String str1 = value1.toString(); String str2 = value2.toString(); if (value1 instanceof Number && value2 instanceof Number) {int maxlen = Math.max(str1.length(), str2.length());str1 = ListUtils.addZero2Str((Number) value1, maxlen);str2 = ListUtils.addZero2Str((Number) value2, maxlen); } else if (value1 instanceof Date && value2 instanceof Date) { // 日期排序long time1 = ((Date) value1).getTime();long time2 = ((Date) value2).getTime();int maxlen = Long.toString(Math.max(time1, time2)).length();str1 = ListUtils.addZero2Str(time1, maxlen);str2 = ListUtils.addZero2Str(time2, maxlen); } if (isAsc) {ret = str1.compareTo(str2); } else {ret = str2.compareTo(str1); } return ret; } else if (null == value1 && null != value2) { // 比值為空 被比值大 ret = 1; } else { // 被比值為空比值打 ret = -1; } return ret; } public static String addZero2Str(Number numObj, int length) { NumberFormat nf = NumberFormat.getInstance(); // 設置是否使用分組 nf.setGroupingUsed(false); // 設置最大整數位數 nf.setMaximumIntegerDigits(length); // 設置最小整數位數 nf.setMinimumIntegerDigits(length); return nf.format(numObj); } public static Object forceGetFieldValue(Object obj, String fieldName) throws Exception { Field field = obj.getClass().getDeclaredField(fieldName); Object object = null; boolean accessible = field.isAccessible(); if (!accessible) { // 如果是private,protected修飾的屬性,需要修改為可以訪問的 field.setAccessible(true); object = field.get(obj); // 還原private,protected屬性的訪問性質 field.setAccessible(accessible); return object; } object = field.get(obj); return object; }

以上這篇java Collections 排序--多條件排序實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
石原莉奈一区二区三区在线观看| 午夜在线精品| 日韩激情中文字幕| 免费日韩视频| 日韩精品一级二级| 亚洲毛片视频| 日本在线不卡视频一二三区| 国产精品腿扒开做爽爽爽挤奶网站| 欧美aa一级| 精品丝袜在线| 国产综合色产| 黑丝一区二区三区| japanese国产精品| 好看不卡的中文字幕| 伊人久久成人| 麻豆成人在线| 少妇精品久久久一区二区三区| 日韩三级久久| 国产精品亚洲四区在线观看| 欧美精品成人| 高清不卡一区| 久久激情中文| 亚洲免费影院| 日韩av字幕| 久久不卡日韩美女| 国产在线看片免费视频在线观看| 91tv亚洲精品香蕉国产一区| 日韩欧美精品综合| 亚洲一级高清| 亚洲ab电影| 麻豆国产一区| 99精品视频在线观看免费播放| 国产精品日本| 日本va欧美va精品发布| 麻豆精品久久| 99视频精品全国免费| 久久都是精品| 国产欧美91| 日韩欧美字幕| 蜜桃视频在线观看一区二区| 欧美在线看片| 日韩免费福利视频| 国产亚洲亚洲| 国产乱码精品一区二区亚洲| 成人国产精品一区二区网站| 午夜国产精品视频| 日本欧美在线| 在线天堂中文资源最新版| 一区视频在线| 国产精品99久久免费| 1024精品一区二区三区| 亚洲精品麻豆| 国产在线观看www| 性色一区二区| 麻豆精品新av中文字幕| 黄色国产精品| 欧美精品1区| 午夜日本精品| 日韩和欧美的一区| 日韩免费久久| 69堂免费精品视频在线播放| 丝袜诱惑一区二区| 亚洲精品大片| 日韩欧美一区二区三区免费看| 亚洲永久精品唐人导航网址| 国精品产品一区| 免费观看日韩电影| 黄色精品视频| 日精品一区二区三区| 久久国产日本精品| 国产精品第一| 综合国产视频| 久久人人99| 久久精品72免费观看| 99精品视频精品精品视频| 久久精品xxxxx| 欧美日韩精品一本二本三本| 精品无人区麻豆乱码久久久 | 精品国产中文字幕第一页| 精品中文一区| 美女视频黄久久| 免费的成人av| 久久精品123| 美女国产精品久久久| 日本 国产 欧美色综合| 美日韩一区二区三区| 涩涩涩久久久成人精品| 婷婷久久一区| 日韩在线短视频| 欧美交a欧美精品喷水| 亚洲精品乱码日韩| 亚洲精品一区二区妖精| 日本美女一区| 水蜜桃久久夜色精品一区| 日韩激情精品| 亚洲我射av| 午夜亚洲精品| 99国产精品99久久久久久粉嫩| 午夜精品成人av| 福利一区和二区| 国产精品分类| 日韩二区在线观看| 蜜桃av一区二区在线观看| 精品日韩视频| 亚洲精品自拍| 天堂成人免费av电影一区| 99精品视频在线观看免费播放| 欧美黄色一区| 亚洲一区二区av| 久久九九精品| 精品五月天堂| 欧美日本不卡高清| 水蜜桃久久夜色精品一区的特点| 国产免费播放一区二区| 亚洲精品影视| 午夜av一区| 神马午夜在线视频| 精品国内亚洲2022精品成人| 日本va欧美va精品| 在线一区欧美| 亚洲自啪免费| 图片区亚洲欧美小说区| 日韩大片在线| 乱一区二区av| 欧美日韩午夜电影网| 午夜一级久久| 伊人精品久久| 国产精品女主播一区二区三区| 免费在线小视频| 精品久久免费| 日本精品另类| 蜜桃视频一区二区| 色婷婷成人网| 亚洲精品视频一二三区| 丝袜亚洲另类欧美| 宅男噜噜噜66国产日韩在线观看| 深夜视频一区二区| 国产一区二区三区久久| 日本激情一区| 国产精品777777在线播放| 欧美亚洲人成在线| 久久国产生活片100| 在线精品一区| 亚洲一级大片| 久久精品xxxxx| 五月国产精品| 亚洲精品在线国产| 亚洲免费毛片| 亚洲欧洲国产精品一区| 伊人久久亚洲美女图片| 精品丝袜在线| 久久亚洲电影| 中文字幕免费一区二区| 亚洲日本免费电影| 日韩国产一区二| 日韩av二区在线播放| 国产精品igao视频网网址不卡日韩| 日本午夜精品久久久久| 日韩av在线播放中文字幕| 91成人在线网站| 国产图片一区| 国产精品xxx在线观看| 国产精品亚洲综合在线观看| 国产一区二区三区探花| 水蜜桃久久夜色精品一区| 日韩精品电影| 婷婷成人在线| 欧洲激情综合| 亚洲综合婷婷| 国产高清不卡| 激情婷婷欧美| 日韩午夜黄色| 中文字幕一区二区精品区| 日本aⅴ精品一区二区三区 | 国产精品美女久久久| 日韩av网站免费在线| 国产激情久久| 91综合视频| 黄色日韩在线| 日韩成人av影视| 久久久免费人体| 亚洲精品极品少妇16p| 在线精品国产亚洲| 国产精品www.| 精品欧美一区二区三区在线观看| 99国产精品| 欧美激情91| 福利一区二区| 国产亚洲精品自拍| 欧美日本三区| 超碰成人av| 日韩午夜一区| 国产一区二区精品福利地址| 欧美日韩精品免费观看视频完整| 日韩一区二区三区免费视频| 久久久久久久久成人| 国产专区一区| 亚洲精品女人| 国产精品99免费看| 91精品国产自产精品男人的天堂 |