對arraylist中元素進行排序?qū)嵗a
rrayList中的元素進行排序,主要考查的是對util包中的Comparator接口和Collections類的使用。
實現(xiàn)Comparator接口必須實現(xiàn)compare方法,自己可以去看API幫助文檔。
創(chuàng)建一個Comparator實例后,用Collections.sort(List,<E>)
對List中的元素進行排序。
下面是實現(xiàn)代碼:
以下文件必須引入util包:
package com.test; import Java.util.*; Emp.java文件如下: class Emp{ private String empNo ; private String empName ; private float sal ; public String getEmpNo() { return empNo; } public void setEmpNo(String empNo) { this.empNo = empNo; } public String getEmpName() { return empName; } public void setEmpName(String empName) { this.empName = empName; } public float getSal() { return sal; } public void setSal(float sal) { this.sal = sal; } public Emp(String empNo,String empName,float sal){ this.empNo = empNo ; this.empName = empName ; this.sal = sal ; } }
自己實現(xiàn)的Comparator接口
class MyComparator implements Comparator{ public int compare(Object o1,Object o2) { Emp e1=(Emp)o1; Emp e2=(Emp)o2; if(e1.getSal()<e2.getSal()) return 1; else return 0; } }
主類Test
public class Test { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub ArrayList al = new ArrayList() ; Emp emp1 = new Emp("sn001","ysj1",2500) ; Emp emp2 = new Emp("sn002","ysj2",1200) ; Emp emp3 = new Emp("sn003","ysj3",8900) ; Emp emp4 = new Emp("sn004","ysj4",3400) ; Emp emp5 = new Emp("sn005","ysj5",4500) ; al.add(emp1) ; al.add(emp2) ; al.add(emp3) ; al.add(emp4) ; al.add(emp5) ; System.out.println("排序前的值"); for (int i=0;i<al.size();i++){ Emp emp = (Emp)al.get(i) ; System.out.println(emp.getSal()); } //必須是Comparator中的compare方法和Collections.sort方法配合使用才管用 MyComparator mc = new MyComparator() ; Collections.sort(al, mc) ; System.out.println("排序后的值"); for (int i=0;i<al.size();i++){ Emp emp = (Emp)al.get(i) ; System.out.println(emp.getSal()); } } }
總結
以上就是本文關于對arraylist中元素進行排序?qū)嵗a的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:ArrayList的自動擴充機制實例解析、ArrayList在for循環(huán)中使用remove方法移除元素方法介紹等,如有不足之處,歡迎提出您的寶貴意見,小編會及時回復大家的。感謝朋友們對本站的支持!
相關文章
java實現(xiàn)excel導入數(shù)據(jù)的工具類
這篇文章主要介紹了java實現(xiàn)的excel導入數(shù)據(jù)的工具類,需要的朋友可以參考下2014-03-03詳解如何用spring Restdocs創(chuàng)建API文檔
這篇文章將帶你了解如何用spring官方推薦的restdoc去生成api文檔。具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05springboot的http.server.requests服務請求流程源碼
這篇文章主要為大家介紹了springboot的http.server.requests服務請求流程源碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-12-12java實現(xiàn)ThreadLocal線程局部變量的實現(xiàn)
本文主要介紹了java實現(xiàn)ThreadLocal線程局部變量的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-07-07