8-1 实现随机猜数游戏 java 用窗口
时间: 2024-02-28 10:55:30 浏览: 79
java窗口程序,可以实现,随机选学生
好的,我可以为您提供一个简单的随机猜数游戏的Java窗口程序。以下是程序的基本结构:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class GuessNumberGame extends JFrame implements ActionListener {
private JTextField textField;
private JTextArea textArea;
private JButton button;
private int randomNumber;
public GuessNumberGame() {
// 设置窗口标题和大小
setTitle("Guess Number Game");
setSize(400, 300);
// 创建文本框、文本区和按钮
textField = new JTextField(10);
textArea = new JTextArea(10, 30);
button = new JButton("Guess");
// 将按钮添加到窗口,并设置监听器
add(button, BorderLayout.SOUTH);
button.addActionListener(this);
// 将文本框和文本区添加到窗口
JPanel panel = new JPanel();
panel.add(new JLabel("Guess a number between 1 and 100: "));
panel.add(textField);
add(panel, BorderLayout.NORTH);
add(new JScrollPane(textArea), BorderLayout.CENTER);
// 生成随机数
randomNumber = (int) (Math.random() * 100) + 1;
}
public void actionPerformed(ActionEvent e) {
// 处理按钮点击事件
try {
int guess = Integer.parseInt(textField.getText());
if (guess < randomNumber) {
textArea.append(guess + " is too low.\n");
} else if (guess > randomNumber) {
textArea.append(guess + " is too high.\n");
} else {
textArea.append("Congratulations! You guessed the number.\n");
button.setEnabled(false);
}
textField.requestFocus();
textField.selectAll();
} catch (NumberFormatException ex) {
textArea.append("Invalid input. Please enter a number.\n");
}
}
public static void main(String[] args) {
GuessNumberGame game = new GuessNumberGame();
game.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
game.setVisible(true);
}
}
```
在这个程序中,我们使用了Java的Swing库来创建窗口界面。程序中的文本框、文本区和按钮都是Swing组件,它们可以很方便地添加到窗口中。
在程序启动时,我们生成一个随机数,然后等待用户输入猜测的数字。当用户点击“Guess”按钮时,程序会读取文本框中的数字,并与随机数进行比较。如果猜测的数字比随机数小,程序会提示用户“too low”,如果猜测的数字比随机数大,程序会提示用户“too high”,如果猜测的数字与随机数相等,程序会提示用户“Congratulations”并禁用“Guess”按钮。如果用户输入的不是数字,程序会提示用户“Invalid input”。
希望这个程序能够满足您的需求,如果您有任何问题或建议,请随时与我联系。
阅读全文