import org.apache.commons.lang.builder.CompareToBuilder;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;
 
/**
 * The Class Book.
 */
public class Book implements Comparable<book> {
 
 /** The id. */
 private long id;
 
 /** The name. */
 private String name;
 
 /**
  * Instantiates a new book.
  */
 public Book() {
 }
 
 /**
  * Gets the id.
  *
  * @return the id
  */
 public long getId() {
  return id;
 }
 
 /**
  * Sets the id.
  *
  * @param id
  *            the new id
  */
 public void setId(long id) {
  this.id = id;
 }
 
 /**
  * Gets the name.
  *
  * @return the name
  */
 public String getName() {
  return name;
 }
 
 /**
  * Sets the name.
  *
  * @param name
  *            the new name
  */
 public void setName(String name) {
  this.name = name;
 }
 
 /*
  * (non-Javadoc)
  *
  * @see java.lang.Comparable#compareTo(java.lang.Object)
  */
 public int compareTo(Book o) {
  return new CompareToBuilder().append(this.getId(), o.getId()).toComparison();
 }
}

通过Comparable来实现对自身的比较的更多相关文章

  1. Java中Comparable与Comparator的区别

    相同 Comparable和Comparator都是用来实现对象的比较.排序 要想对象比较.排序,都需要实现Comparable或Comparator接口 Comparable和Comparator都 ...

  2. 12.Java中Comparable接口,Readable接口和Iterable接口

    1.Comparable接口 说明:可比较(可排序的) 例子:按照MyClass的y属性进行生序排序 class MyClass implements Comparable<MyClass> ...

  3. 泛型的排序问题(Collections.sort及Comparable的应用)

    一.前言    java中对泛型(集合类型)排序的问题,主要采用了两张方式一种是对要排序的实体类,实现Comparable接口,另一种方式,Collections集合工具类进行排序. 二.实现Comp ...

  4. 【集合框架】JDK1.8源码分析之Comparable && Comparator(九)

    一.前言 在Java集合框架里面,各种集合的操作很大程度上都离不开Comparable和Comparator,虽然它们与集合没有显示的关系,但是它们只有在集合里面的时候才能发挥最大的威力.下面是开始我 ...

  5. 对象比较器:Comparable和Comparator

    在进行对象数组排序的过程中需要使用到比较器,比较器有两个:Comparable和Comparator ①.java.lang.Comparable:是在类定义是时候默认实现好的接口,里面提供有一个co ...

  6. java中的Comparable接口

    类对象之间比较"大小"往往是很有用的操作,比如让对象数组排序时,就需要依赖比较操作.对于不同的类有不同的语义.如Student类,比较2个学生对象可以比较他们的score分数来评判 ...

  7. java://Comparator、Comparable的用法(按照要求将map集合的键值对进行顺序输出)

    import java.util.*; public class Person implements Comparable<Person>//使Person的属性具有比较性 { priva ...

  8. Java中Comparable和Comparator接口区别分析

    Java中Comparable和Comparator接口区别分析 来源:码农网 | 时间:2015-03-16 10:25:20 | 阅读数:8902 [导读] 本文要来详细分析一下Java中Comp ...

  9. Comparable和Comparator的区别

    Comparable Comparable可以认为是一个内比较器,实现了Comparable接口的类有一个特点,就是这些类是可以和自己比较的,至于具体和另一个实现了Comparable接口的类如何比较 ...

  10. java.lang.Comparable<T> 接口

    package java.lang; import java.util.*; public interface Comparable<T> { public int compareTo(T ...

随机推荐

  1. Python编程基础[函数和面向对象](三)

    Python 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也 ...

  2. Raspberry Camera详解+picamera库+Opencv控制

    使用树莓派的摄像头,将树莓派自身提供的picamera的API数据转换为Python Oencv可用图像数据: # import the necessary packages from picamer ...

  3. Harmonic Number(调和级数+欧拉常数)

    In mathematics, the nth harmonic number is the sum of the reciprocals of the first n natural numbers ...

  4. Editor HDU - 4699 (栈)

    Problem Description   Sample Input 8 I 2 I -1 I 1 Q 3 L D R Q 2   Sample Output 2 3 Hint The followi ...

  5. 大家的备忘录——xpage_在同一页面展开文档显示该文档详细信息(可显示处理过的Rich Text)

    Xpage大纲: 解析: 1.通过[link2]点击触发jQuery事件来展开[面板:thispanel] 2.[面板:thispanel]写了onClientLoad事件:让thispanel隐藏. ...

  6. javascript中6种基本数据类型详解

    javascript中有5中数据类型(也称为基本数据类型):Undefined.Null.Boolean.Number和String,还有一种复杂数据类型——object,object本质是由一组键值 ...

  7. MySql基础笔记(三)其他重要的事情

    其他重要的事情 一)索引管理优化 1.把多条alter语句整合为一条 2.去除重复的索引 1)当一个索引的最左边部分包含到其他索引中时,被认定为重复索引 create table user( id i ...

  8. 【DWM1000】 code 解密1一 去掉Main 函数多余内容

    蓝点DWM1000 模块已经打样测试完毕,有兴趣的可以申请购买了,更多信息参见 蓝点论坛 正文: 室内定位兴起,DWM1000 作为超宽带UWB的代表,在国内用的越来越多,但是可见资料非常少. 一方面 ...

  9. BZOJ1439 : YY的问题

    考虑容斥,枚举哪些不存在的边选中了,剩下的不管,则可以用组合数计算方案数. 时间复杂度$O(m2^m+nm)$. #include<cstdio> const int N=550,B=10 ...

  10. js怎么删数组固定的值

    <script type="text/javascript"> Array.prototype.indexOf = function(val) { for (var i ...