编写一个book类,该类至少有name和price两个属性。该类要实现comarable接口,在接口的compareto()方法中规定两个book类实例的大小关系为二者的price属性的大小关系。在主函数中,选择合适的集合类型存放book类的若干个对象,然后创建一个新的book类的对象,并检查该对象与集合中的哪些对象相等。
时间: 2023-04-20 20:02:26 浏览: 173
下面是一个示例的book类的代码:
```
public class Book implements Comparable<Book> {
private String name;
private double price;
public Book(String name, double price) {
this.name = name;
this.price = price;
}
public String getName() {
return name;
}
public double getPrice() {
return price;
}
@Override
public int compareTo(Book other) {
if (this.price < other.price) {
return -1;
} else if (this.price > other.price) {
return 1;
} else {
return ;
}
}
}
```
在主函数中,我们可以使用ArrayList来存放多个Book对象,然后创建一个新的Book对象,并使用contains方法来检查该对象是否与集合中的某个对象相等。示例代码如下:
```
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<Book> books = new ArrayList<>();
books.add(new Book("Java Programming", 29.99));
books.add(new Book("Python Programming", 24.99));
books.add(new Book("C++ Programming", 34.99));
Book newBook = new Book("Java Programming", 29.99);
if (books.contains(newBook)) {
System.out.println("The new book is already in the collection.");
} else {
System.out.println("The new book is not in the collection.");
}
}
}
```
阅读全文