방법 1 : 비교기 인터페이스 구현 및 비교 방법을 재정의합니다.
엔티티 클래스 코드 :
import java.util.comparator;/*** 학생 클래스 방법 1* 비교기 인터페이스 구현* 비교 방법* @author liaot**/public class 학생 emplements <tudent> {개인 문자열 이름; // 개인 int 연령의 이름; // Age/Rewrite 비교 방법을 다시 작성 하십시오이 예는 age @override public int compart (student o1, student o2) {if (o1.getage ()> o2.getage ()) {return 1; } else {return -1; }} 공개 학생 (문자열 이름, int age) {super (); this.name = 이름; this.age = age; } public String getName () {return name; } public void setName (문자열 이름) {this.name = 이름; } public int getage () {반환 연령; } public void 설정 (int Age) {this.age = age; }}테스트 클래스 :
import java.util.arraylist; import java.util.collections; import java.util.list; public class main {public static void main (String [] args) {// 4 개의 다른 학생들 student stu1 = 신입생 ( "passy a", 20); 학생 stu2 = 신입생 ( "Passy a", 18); 학생 stu3 = 신입생 ( "Passy C", 16); 학생 stu4 = 신입생 ( "Passy C", 19); // 목록에 학생을 추가 할 새 목록을 만듭니다. 목록 <tudent> stulist = new ArrayList <> (); stulist.add (stu1); stulist.add (stu2); stulist.add (stu3); stulist.add (stu4); System.out.println ( "정렬 전 : ======"); for (학생 stu : stulist) {system.out.println ( "이름 :"+stu.getname ()+"age"+stu.getage ()); } // collections.sort (stulist, stu1); // 첫 번째 매개 변수는 목록입니다. 두 번째 매개 변수는 객체 system.out.println의 인스턴스입니다 ( "sorted : ======"); for (학생 stu : stulist) {system.out.println ( "이름 :"+stu.getname ()+"age"+stu.getage ()); }}}실행 결과 :
방법 2 : 비슷한 인터페이스 구현 및 비교 방법을 재정의합니다.
/** * 학생 클래스 방법 2는 비교 가능한 인터페이스를 구현하고 비교 방법을 다시 작성합니다 * @author liaot * */public class student2 empable <tudling2> {개인 문자열 이름; // 개인 int 연령의 이름; // age // 비교 방법을 다시 작성하십시오. } else {return -1; }} public student2 (문자열 이름, int age) {super (); this.name = 이름; this.age = age; } public String getName () {return name; } public void setName (문자열 이름) {this.name = 이름; } public int getage () {반환 연령; } public void 설정 (int Age) {this.age = age; }}테스트 클래스
import java.util.arraylist; import java.util.collections; import java.util.list; public class main2 {public static void main (String [] args) {// 4 개의 다른 학생들 2 student 2 stu1 = new Student2 ( "passy a", 20); Student2 STU2 = New Student2 ( "Passy A", 18); Student2 STU3 = New Student2 ( "Passy C", 16); Student2 STU4 = New Student2 ( "Passy C", 19); // 목록에 학생을 추가 할 새 목록을 만듭니다. 목록 <Tudly <Tudlyt2> Stulist = new ArrayList <> (); stulist.add (stu1); stulist.add (stu2); stulist.add (stu3); stulist.add (stu4); System.out.println ( "정렬 전 : ======"); for (Student2 STU : Stulist) {System.out.println ( "이름 :"+stu.getName ()+"age"+stu.getage ()); } // Sort Collections.sort (Stulist); // 하나의 매개 변수 만 List System.out.println입니다 ( "정렬 : ======"); for (Student2 STU : Stulist) {System.out.println ( "이름 :"+stu.getName ()+"age"+stu.getage ()); }}}실행 결과
3. 요약 : 두 가지 방법의 글쓰기와 사용의 차이 :
목록의 객체의 속성에 따른 위의 Java 정렬 방법은 내가 공유하는 모든 내용입니다. 나는 그것이 당신에게 참조를 줄 수 있기를 바랍니다. 그리고 당신이 wulin.com을 더 지원할 수 있기를 바랍니다.