package shiyan4_2; import java.util.*; public class MainClass { @SuppressWarnings("unchecked") public static void main(String args[]) { List<Book> bookList=new LinkedList<Book>(); String bookName[]={"C语言程序设计基础","计算机组成原理","JSP基础教程","C++程序设计", "J2ME编程","操作系统","数据库技术"}; double bookPrice[]={29,21,22,29,34,32,29}; Book book[]=new Book[bookName.length]; for(int k=0;k<book.length;k++) { book[k]=new Book(); book[k].setName(bookName[k]); book[k].setPrice(bookPrice[k]); bookList.add(book[k]); } Book newBook=new Book(); newBook.setPrice(29); newBook.setName("Java程序设计"); bookList.add(newBook); Collections.sort(bookList); int m=-1; System.out.println("经查询, "+newBook.getName()+"("+newBook.getPrice()+")与下列图书:"); while((m=Collections.binarySearch(bookList,newBook,null))>=0) { Book bk=bookList.get(m); System.out.println("\t"+bk.getName()+"("+bk.getPrice()+")"); 【代码4】 } System.out.println("价钱相同。"); } }
时间: 2023-07-16 10:16:23 浏览: 108
shiyan.rar_Rpt_Hour_shiyan.58.vom
这段代码是一个关于图书的主程序,包含了以下步骤:
1. 创建一个LinkedList类型的图书列表bookList和两个数组bookName和bookPrice;
2. 遍历book数组,创建Book对象,设置其名称和价格,并将其添加到bookList中;
3. 创建一个新的Book对象newBook,设置其名称和价格,将其添加到bookList中;
4. 使用Collections.sort()方法对bookList进行排序;
5. 使用Collections.binarySearch()方法查找newBook在bookList中的位置;
6. 如果找到了newBook,则输出与newBook价格相同的图书名称和价格;
7. 如果没有找到newBook,则输出“没有找到与newBook价格相同的图书”。
【代码4】的实现应该是:
```
bookList.remove(m);
```
这行代码的作用是将找到的相同价格的图书从bookList中删除,以避免重复输出。
阅读全文