java Comparable 比较器的使用

/**
 * 
 */
package com.mindreader;

import java.util.Arrays;

/**
 * @作者 Mind reader
 * @内容 对象数组排序——Comparable比较器的使用
 * @项目名 arrays_demo
 * @日期 2016年5月11日
 * @时间 下午1:48:04
 * 
 */
/*
 * 如果要对对象数组进行排序,需要实现Comparable接口并重写他的compareTo()方法,该方法无需显示调用,Arrays.sort()会自动调用的
 */
public class Comparable_demo {
    public static void main(String[] args) {
        Book[] arr = new Book[] { new Book("java编程开发", 25), new Book("c#编程开发", 26), new Book("PHP编程开发", 58),
                new Book("易语言编程开发", 252), new Book("c++编程开发", 254), new Book("HTTP编程指南", 456) };
        Arrays.sort(arr);
        System.out.println(Arrays.toString(arr));
        
    }
}

class Book implements Comparable<Book> {
    String name;
    double price;
    public String toString() {
        return this.name+"==============="+this.price+"\n";
    }
    public Book() {
        
    }
    public Book(String name, double price) {
        this.name = name;
        this.price = price;
    }
    
    @Override
    public int compareTo(Book o) {
        if(this.price>o.price){
            return -1;
        }else if(this.price<o.price){
            return 1;
        }else{
            return 0;
        }
        
    }

}

 

posted @ 2016-05-11 14:41  奈水犹寒  阅读(253)  评论(0编辑  收藏  举报