久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

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

Java實現對象按照其屬性排序的兩種方法示例

瀏覽:3日期:2022-09-01 10:46:22

本文實例講述了Java實現對象按照其屬性排序的兩種方法。分享給大家供大家參考,具體如下:

有時候需要對對象列表或數組進行排序,下面提供兩種簡單方式:

方法一:將要排序的對象類實現Comparable<>接口。

首先,創建學生類,我們將根據學生成績對學生進行排序:

/*** 學生類*/class Student implements Comparable<Student>{ String name; int age; int score; public Student(String name, int age,int score) { this.name = name; this.age = age; this.score = score; } @Override public int compareTo(Studento) { // TODO Auto-generated method stub return this.age - o.age; }}

public class Test { public static void main(String[] args) { // TODO Auto-generated method stub ArrayList<Student> students = new ArrayList<>(); students.add(new Student('大銘', 19, 89)); students.add(new Student('來福', 26, 90)); students.add(new Student('倉頡', 23, 70)); students.add(new Student('王磊', 18, 80)); System.out.println('排序前:'); for (Student student : students) { System.out.println('姓名:'+student.name+' 年齡:'+student.age+' 成績:'+student.score); } // 排序 Collections.sort(students); System.out.println('排序后:'); for (Student student : students) { System.out.println('姓名:'+student.name+' 年齡:'+student.age+' 成績:'+student.score); } }}

同理,也可以根據對象的其他屬性進行排序。

方法二:使用Comparator匿名內部類實現。

還是使用同一個例子,按成績將學生排序:

/*** 學生類*/class Student { String name; int age; int score; public Student(String name, int age,int score) { this.name = name; this.age = age; this.score = score; }}

public class Test { public static void main(String[] args) { // TODO Auto-generated method stub ArrayList<Student> students = new ArrayList<>(); students.add(new Student('大銘', 19, 89)); students.add(new Student('來福', 26, 90)); students.add(new Student('倉頡', 23, 70)); students.add(new Student('王磊', 18, 80)); System.out.println('排序前:'); for (Student student : students) { System.out.println('姓名:'+student.name+' 年齡:'+student.age+' 成績:'+student.score); } Collections.sort(students,new Comparator<Student>() { @Override public int compare(Student o1, Student o2) {// TODO Auto-generated method stubreturn o1.age-o2.age; } }); System.out.println('排序后:'); for (Student student : students) { System.out.println('姓名:'+student.name+' 年齡:'+student.age+' 成績:'+student.score); } }}

也可以實現按對象屬性將對象列表排序。

更多關于java相關內容感興趣的讀者可查看本站專題:《Java面向對象程序設計入門與進階教程》、《Java數據結構與算法教程》、《Java操作DOM節點技巧總結》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》

希望本文所述對大家java程序設計有所幫助。

標簽: Java
相關文章:
主站蜘蛛池模板: 泰来县| 清水河县| 天津市| 池州市| 平邑县| 环江| 江达县| 饶阳县| 永康市| 长乐市| 高邑县| 万荣县| 九龙县| 梁山县| 白玉县| 长白| 天津市| 阜阳市| 景德镇市| 酒泉市| 济源市| 奉节县| 易门县| 峨眉山市| 乌兰县| 广元市| 宜宾市| 休宁县| 崇明县| 那曲县| 红安县| 抚顺市| 武定县| 南和县| 阜南县| 瓦房店市| 盐源县| 留坝县| 名山县| 安龙县| 荔浦县|