1. 程式人生 > 其它 >排序演算法(一)——Comparable介面

排序演算法(一)——Comparable介面

技術標籤:資料結構與演算法

在這裡插入圖片描述
編寫Student類實現Comparable介面,重寫compareTo方法

package sort;

//定義一個Student類,具有age和username兩個屬性,通過Comparable結構提供比較規則
public class Student implements Comparable<Student>{
	private String username;
	private int age;
	
	public String getUsername() {
		return username;
	}
	public void setUsername
(String username) { this.username = username; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Override public String toString() { return "Student [username=" + username + ", age=" + age + "]"; } @Override public
int compareTo(Student o) { // TODO Auto-generated method stub return this.age - o.age; } }
package test;

import sort.Student;

public class TestComparable {
	
	public static void main(String[] args) {
		Student s1 = new Student();
		s1.setUsername("小強");
		s1.setAge(18);
		
		Student s2 =
new Student(); s2.setUsername("小紅"); s2.setAge(19); Comparable max = getMax(s1,s2); //由於重寫了toString方法,所以可以輸出資訊 System.out.println(max); } //返回較大的物件 public static Comparable getMax(Comparable c1,Comparable c2) { int result = c1.compareTo(c2); if(result >= 0) { return c1; }else { return c2; } } }