JAVA第九次作业(1)

来源:互联网 发布:美工的职业目标 编辑:程序博客网 时间:2024/05/17 09:23

1 编写一个Book类,该类至少有name和price两个属性。该类要实现Comparable接口,在接口的compareTo()方法中规定两个Book类实例的大小关系为二者的price属性的大小关系。在主函数中,选择合适的集合类型存放Book类的若干个对象,然后创建一个新的Book类的对象,并检查该对象与集合中的哪些对象相等。查询结果如下图:

import java.util.ArrayList;
public class BookTest {
public static void main(String[] args) {
ArrayList<Book> list=new ArrayList<Book>();
list.add(new Book("Java基础教程",29));
list.add(new Book("数据库技术",56));
list.add(new Book("C++基础教程",38));
list.add(new Book("数据结构原理",30));
Book b1=new Book("模拟识别案例",38);
System.out.println("新书:《模式识别》与下列图书");
for(int i=0;i<list.size();i++)
{

int a=b1.compareTo(list.get(i));
if(a==0)
{
Book b2=(Book)list.get(i);
System.out.println(b2.name);

}
}
System.out.println("\n");
System.out.println("价格相同,具体价格为:29元");

}
}


public class Book implements Comparable {
String name;
Integer price;
public Book(String name,Integer price)
{
this.name=name;
this.price=price;
}
public int compareTo(Object obj)
{
Book b=(Book)obj;
return b.price-this.price;
}
}

总结:理解题意,多本书中只制定一个末班