#
编写一个Book类,该类至少有name和price两个属性。该类要实现Comarable接口,在接口的compareTo()方法中规定两个Book类实例的大小关系为二者的price属性的大小关系。在主函数中,选择合适的集合类型存放Book类的若干个对象,然后创建一个新的Book类的对象,并检查该对象与集合中的哪些对象相等。查询结果如下图: ##
import java.util.*;
public class Book implements Comparable{
public String name;
public Double price;
public Book(String name,Double price){
this.name=name;
this.price=price;
}
public int compareTo(Object obj){
Book b=(Book)obj;
if(b.price-this.price==0)
{
return 1;
}
else
return 0;
}
}
import java.util.*;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
List<Book> list=new ArrayList<Book>();
Book book1=new Book("Java基础教程",29.0);
Book book2=new Book("数据库技术",29.0);
Book book3=new Book("C++基础教程",28.0);
list.add(book1);
list.add(book2);
list.add(book3);
Book book4=new Book("模式识别",29.0);
System.out.println("新书:"+book4.name+"与下列图书");
for(int i=0;i<list.size();i++)
{
Book book=(Book)list.get(i);
int k=book.compareTo(book4);
if(k==1)
{
System.out.println(book.name);
}
}
System.out.println("价格相同,具体价格为"+book4.price);
}
}