JAVA對list集合進(jìn)行排序Collections.sort()
對一個集合中的對象進(jìn)行排序,根據(jù)對象的某個指標(biāo)的大小進(jìn)行升序或降序排序。代碼如下:
進(jìn)行降序排列
進(jìn)行降序排列 Collections.sort(list, new Comparator<ResultTypeDesc>() { public int compare(ResultTypeDesc o1, ResultTypeDesc o2) { return o2.getRatio().compareTo(o1.getRatio()); } });
進(jìn)行升序排列
Collections.sort(list, new Comparator<ResultTypeDesc>() { public int compare(ResultTypeDesc o1, ResultTypeDesc o2) { return o1.getRatio().compareTo(o2.getRatio()); } });
經(jīng)過測試發(fā)現(xiàn),只需要把兩個對象的位置調(diào)換一下即可升序或降序。
如果指標(biāo)相同,根據(jù)多個指標(biāo)進(jìn)行排序,需創(chuàng)建一個比較器:
import java.util.*; public class ComparatorResultType implements Comparator{ public int compare(Object arg0, Object arg1) { ResultTypeDesc desc0=(ResultTypeDesc)arg0; ResultTypeDesc desc1=(ResultTypeDesc)arg1; //首先比較主指標(biāo),如果主指標(biāo)相同,則比較次指標(biāo) int flag=desc0.getXXX().compareTo(desc1.getXXX()); if(flag==0){ return desc0.getXXX2().compareTo(desc1.getXXX2()); }else{ return flag; } } } //測試類中代碼: ComparatorResultType comparator=new ComparatorResultType(); Collections.sort(list, comparator);
對list集合進(jìn)行逆輸出:
Collections.reverse(list);
ResultTypeDesc這個為所需的實(shí)體類對象,具體使用結(jié)合自己代碼情況即可。
此方法有可能報空指針,自己結(jié)合情況,自行解決,判斷是否為NULL。
相關(guān)文章
java實(shí)現(xiàn)動態(tài)上傳多個文件并解決文件重名問題
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)動態(tài)上傳多個文件,并解決文件重名問題的方法,感興趣的小伙伴們可以參考一下2016-03-03Springboot整合SpringSecurity的完整案例詳解
Spring Security是基于Spring生態(tài)圈的,用于提供安全訪問控制解決方案的框架,Spring Security登錄認(rèn)證主要涉及兩個重要的接口 UserDetailService和UserDetails接口,本文對Springboot整合SpringSecurity過程給大家介紹的非常詳細(xì),需要的朋友參考下吧2024-01-01Java動態(tài)獲取實(shí)現(xiàn)類的方式詳解
這篇文章主要介紹了Java動態(tài)獲取實(shí)現(xiàn)類的方式詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的參考價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2024-01-01JAVA過濾標(biāo)簽實(shí)現(xiàn)將html內(nèi)容轉(zhuǎn)換為文本的方法示例
這篇文章主要介紹了JAVA過濾標(biāo)簽實(shí)現(xiàn)將html內(nèi)容轉(zhuǎn)換為文本的方法,涉及java針對HTML代碼的正則替換相關(guān)操作技巧,需要的朋友可以參考下2017-07-07