Setbook sb = new Setbook("","1");
时间: 2023-12-11 21:02:47 浏览: 17
As an AI language model, I am not sure what the `Setbook` class does or what the parameters are. However, based on the code snippet provided, it seems like the first parameter of the constructor is an empty string and the second parameter is the string "1".
相关问题
用JAVA设计一个GUI界面设计一个图书查询应用,book.txt文件中至少有5条图书记录,每条图书记录都包括图书的ISBN号,作 者,出版社,定价,页数等。用户输入图书的ISBN号,则在界面中显示该图书的详细信息。
好的,这是一个比较典型的Java GUI应用程序,需要使用Swing或JavaFX框架来实现。以下是我的解决方案:
首先,我们需要一个界面来接收用户输入。我们可以使用一个文本框和一个按钮来实现这个功能,代码如下:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class BookSearchApp extends JFrame {
public BookSearchApp() {
super("图书查询应用");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(400, 100);
JPanel panel = new JPanel();
panel.setLayout(new FlowLayout());
JLabel label = new JLabel("请输入图书的ISBN号:");
JTextField textField = new JTextField(20);
JButton button = new JButton("查询");
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// 在这里实现查询图书的功能
}
});
panel.add(label);
panel.add(textField);
panel.add(button);
add(panel);
setVisible(true);
}
public static void main(String[] args) {
new BookSearchApp();
}
}
```
接下来,我们需要读取book.txt文件中的图书信息并保存到一个数据结构中。为了方便,我们可以使用一个HashMap来保存每本书的信息,代码如下:
```java
import java.util.*;
import java.io.*;
public class BookSearchApp {
private Map<String, String[]> bookMap;
public BookSearchApp() {
bookMap = new HashMap<String, String[]>();
try {
BufferedReader reader = new BufferedReader(new FileReader("book.txt"));
String line = null;
while ((line = reader.readLine()) != null) {
String[] bookInfo = line.split(",");
bookMap.put(bookInfo[0], bookInfo);
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
// ...
}
// ...
}
```
最后,我们需要实现查询图书的功能。当用户点击查询按钮时,我们可以从文本框中获取ISBN号,然后从HashMap中查找对应的图书信息。如果找到了,则将图书信息显示在界面上,否则提示用户未找到该图书。代码如下:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.io.*;
public class BookSearchApp extends JFrame {
private Map<String, String[]> bookMap;
public BookSearchApp() {
super("图书查询应用");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(400, 100);
bookMap = new HashMap<String, String[]>();
try {
BufferedReader reader = new BufferedReader(new FileReader("book.txt"));
String line = null;
while ((line = reader.readLine()) != null) {
String[] bookInfo = line.split(",");
bookMap.put(bookInfo[0], bookInfo);
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
JPanel panel = new JPanel();
panel.setLayout(new FlowLayout());
JLabel label = new JLabel("请输入图书的ISBN号:");
JTextField textField = new JTextField(20);
JButton button = new JButton("查询");
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String isbn = textField.getText();
String[] bookInfo = bookMap.get(isbn);
if (bookInfo != null) {
StringBuilder sb = new StringBuilder("<html>");
sb.append("<b>标题:</b>").append(bookInfo[1]).append("<br>");
sb.append("<b>作者:</b>").append(bookInfo[2]).append("<br>");
sb.append("<b>出版社:</b>").append(bookInfo[3]).append("<br>");
sb.append("<b>定价:</b>").append(bookInfo[4]).append("<br>");
sb.append("<b>页数:</b>").append(bookInfo[5]).append("<br>");
sb.append("</html>");
JOptionPane.showMessageDialog(null, sb.toString());
} else {
JOptionPane.showMessageDialog(null, "未找到该图书!");
}
}
});
panel.add(label);
panel.add(textField);
panel.add(button);
add(panel);
setVisible(true);
}
public static void main(String[] args) {
new BookSearchApp();
}
}
```
这样,一个简单的图书查询应用就完成了。用户输入图书的ISBN号,程序从book.txt文件中读取图书信息并保存到HashMap中,然后根据用户输入的ISBN号在HashMap中查找对应的图书信息,最后在界面上显示该图书的详细信息。
用Java写一个弹窗式图书管理系统
好的,下面是一个简单的弹窗式图书管理系统的Java代码示例:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
public class BookManagementSystem extends JFrame implements ActionListener {
private JTextField bookNameField, authorField, priceField;
private JButton addButton, deleteButton, searchButton, displayButton;
private JTextArea resultArea;
private ArrayList<Book> bookList;
public BookManagementSystem() {
super("图书管理系统");
bookList = new ArrayList<Book>();
// UI界面初始化
JPanel controlPanel = new JPanel(new GridLayout(5, 2, 5, 5));
controlPanel.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));
controlPanel.add(new JLabel("书名:"));
bookNameField = new JTextField(20);
controlPanel.add(bookNameField);
controlPanel.add(new JLabel("作者:"));
authorField = new JTextField(20);
controlPanel.add(authorField);
controlPanel.add(new JLabel("价格:"));
priceField = new JTextField(20);
controlPanel.add(priceField);
addButton = new JButton("添加");
addButton.addActionListener(this);
controlPanel.add(addButton);
deleteButton = new JButton("删除");
deleteButton.addActionListener(this);
controlPanel.add(deleteButton);
searchButton = new JButton("查询");
searchButton.addActionListener(this);
controlPanel.add(searchButton);
displayButton = new JButton("显示");
displayButton.addActionListener(this);
controlPanel.add(displayButton);
resultArea = new JTextArea(20, 60);
resultArea.setEditable(false);
JScrollPane scrollPane = new JScrollPane(resultArea);
Container container = getContentPane();
container.add(controlPanel, BorderLayout.NORTH);
container.add(scrollPane, BorderLayout.CENTER);
pack();
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == addButton) {
String bookName = bookNameField.getText();
String author = authorField.getText();
double price = Double.parseDouble(priceField.getText());
Book book = new Book(bookName, author, price);
bookList.add(book);
resultArea.setText("添加成功!");
} else if (e.getSource() == deleteButton) {
String bookName = bookNameField.getText();
for (Book book : bookList) {
if (book.getBookName().equals(bookName)) {
bookList.remove(book);
resultArea.setText("删除成功!");
return;
}
}
resultArea.setText("未找到该书!");
} else if (e.getSource() == searchButton) {
String bookName = bookNameField.getText();
for (Book book : bookList) {
if (book.getBookName().equals(bookName)) {
resultArea.setText(book.toString());
return;
}
}
resultArea.setText("未找到该书!");
} else if (e.getSource() == displayButton) {
StringBuilder sb = new StringBuilder();
for (Book book : bookList) {
sb.append(book.toString()).append("\n");
}
resultArea.setText(sb.toString());
}
}
public static void main(String[] args) {
new BookManagementSystem();
}
}
class Book {
private String bookName;
private String author;
private double price;
public Book(String bookName, String author, double price) {
this.bookName = bookName;
this.author = author;
this.price = price;
}
public String getBookName() {
return bookName;
}
public void setBookName(String bookName) {
this.bookName = bookName;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public String toString() {
return "书名:" + bookName + ",作者:" + author + ",价格:" + price + "元。";
}
}
```
这个图书管理系统可以实现添加、删除、查询和显示图书列表的功能。您可以根据您的具体需求进行修改和完善。