编写Book类,含书名name、价格price属性及相应get、set方法,接着完成类Helper的input方法完成书籍输入(注意输入串要含有书名及价格两类信息)进Book对象,并存储进容器bookList,接着对bookList排序,并查找某本书是否在bookList中并给出信息提示, 请将下列代码补充完整(完成Helper类的编写) import java.util.*; public class Main{ public static void main(String args[]){ linkedList bookList=new linkedList(); Helper helper = new Helper(); // 输入数据 helper.input(bookList); // 排序 helper.sort(bookList); // 查找:产生一本新书,然后查和它重复的书并给出提示 Book newBook=new Book(); newBook.setPrice(29); newBook.setName("Java"); Book searchBook=newBook; helper.query(bookList,searchBook); } } class Book implements Comparable{ double price; String name; public void setPrice(double c){ price=c; } public double getPrice(){ return price; } public void setName(String n){ name=n; } public String getName(){ return name; } public int compareTo(object object){ Book bk=(Book)object; int difference=(int)(this.getPrice()-bk.getPrice()); return difference; } }
时间: 2024-02-14 10:04:38 浏览: 68
以下是完成Helper类的代码:
```
class Helper {
Scanner input = new Scanner(System.in);
public void input(LinkedList<Book> bookList) {
System.out.println("请输入书籍信息,格式为:书名 价格");
while (input.hasNext()) {
String name = input.next();
double price = input.nextDouble();
Book book = new Book();
book.setName(name);
book.setPrice(price);
bookList.add(book);
}
}
public void sort(LinkedList<Book> bookList) {
Collections.sort(bookList);
System.out.println("排序后的书籍信息为:");
for (Book book : bookList) {
System.out.println(book.getName() + " " + book.getPrice());
}
}
public void query(LinkedList<Book> bookList, Book searchBook) {
if (bookList.contains(searchBook)) {
System.out.println("该书已存在于书库中");
} else {
System.out.println("该书不存在于书库中");
}
}
}
```
在这里,我们使用了Scanner类来从控制台输入书籍信息,并将其存储在Book对象中,然后将其添加到bookList中。sort方法使用Collections类中的sort方法对bookList进行排序,并在控制台打印出排序后的书籍信息。query方法使用LinkedList类中的contains方法查找是否有与searchBook相同的书籍,并在控制台输出相应的信息提示。
阅读全文