java从键盘依次输入6本图书信息(以顺序表存放),分别编写按书号、书名及价格等信息的查找方法,实现图书信息的查找。的main方法
时间: 2024-02-13 11:06:57 浏览: 20
好的,以下是Java代码实现:
```java
import java.util.Scanner;
public class Book {
private String bookNo;
private String bookName;
private double price;
public Book(String bookNo, String bookName, double price) {
this.bookNo = bookNo;
this.bookName = bookName;
this.price = price;
}
public String getBookNo() {
return bookNo;
}
public String getBookName() {
return bookName;
}
public double getPrice() {
return price;
}
public static int searchByBookNo(Book[] books, String bookNo) {
for (int i = 0; i < books.length; i++) {
if (books[i].getBookNo().equals(bookNo)) {
return i;
}
}
return -1;
}
public static int searchByBookName(Book[] books, String bookName) {
for (int i = 0; i < books.length; i++) {
if (books[i].getBookName().equals(bookName)) {
return i;
}
}
return -1;
}
public static int searchByPrice(Book[] books, double price) {
for (int i = 0; i < books.length; i++) {
if (books[i].getPrice() == price) {
return i;
}
}
return -1;
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
Book[] books = new Book[6];
for (int i = 0; i < books.length; i++) {
System.out.println("请输入第" + (i + 1) + "本书的书号、书名和价格:");
String bookNo = scanner.next();
String bookName = scanner.next();
double price = scanner.nextDouble();
books[i] = new Book(bookNo, bookName, price);
}
System.out.println("请输入查找方式(1.按书号查找 2.按书名查找 3.按价格查找):");
int searchType = scanner.nextInt();
switch (searchType) {
case 1:
System.out.println("请输入要查找的书号:");
String bookNo = scanner.next();
int indexByBookNo = searchByBookNo(books, bookNo);
if (indexByBookNo != -1) {
System.out.println("找到了该书,序号为:" + (indexByBookNo + 1));
} else {
System.out.println("未找到该书!");
}
break;
case 2:
System.out.println("请输入要查找的书名:");
String bookName = scanner.next();
int indexByBookName = searchByBookName(books, bookName);
if (indexByBookName != -1) {
System.out.println("找到了该书,序号为:" + (indexByBookName + 1));
} else {
System.out.println("未找到该书!");
}
break;
case 3:
System.out.println("请输入要查找的价格:");
double price = scanner.nextDouble();
int indexByPrice = searchByPrice(books, price);
if (indexByPrice != -1) {
System.out.println("找到了该书,序号为:" + (indexByPrice + 1));
} else {
System.out.println("未找到该书!");
}
break;
default:
System.out.println("输入有误!");
break;
}
}
}
```
这个程序实现了从键盘输入6本图书信息,并提供了三种查找方式:按书号、书名和价格进行查找。