import java.util.*;
/*编写一个Book类,该类至少有name和price两个属性。
该类要实现Comarable接口,在接口的compareTo()方法中规定两个Book类实例的大小关系为二者的price属性的大小关系。
在主函数中,选择合适的集合类型存放Book类的若干个对象,
然后创建一个新的Book类的对象,并检查该对象与集合中的哪些对象相等*/
class Book implements Comparable{
String name;
int price;
Book(String n,int d){
name=n;
price=d;
}
public int compareTo(Object b) {
Book book=(Book)b;
return (this.price-book.price);
}
}
public class Example {
public static void main(String[] args) {
List<Book> list=new LinkedList<Book>();
list.add(new Book("JAVA基础教程",12));
list.add(new Book("数据库技术",13));
list.add(new Book("C++基础教程",29));
Iterator<Book>iter=list.iterator();
Book book1=new Book("模式识别",29);
System.out.println("排序前的数据");
while(iter.hasNext()) {
Book book=iter.next();
System.out.println(book.name+"价格:"+book.price);
}
Collections.sort(list);
System.out.println("排序后的数据");
iter=list.iterator();
while(iter.hasNext()) {
Book book=iter.next();
System.out.println(book.name+"价格:"+book.price);
}
iter=list.iterator();
while(iter.hasNext()) {
Book book=iter.next();
if(book1.compareTo(book)==0) {
System.out.println(book1.name+"和下列图书中"+book.name+"价格相同均为:"+book1.price);
}
}
}
}
泛型
最新推荐文章于 2021-05-26 23:42:30 发布