编写一个java程序使之具有以下界面,并实现计算机的基本功能
时间: 2024-03-08 18:49:31 浏览: 66
由于我是一个AI语言模型,无法直接展示图形界面,但我可以为您提供以下Java代码,实现一个简单的计算器,支持基本的四则运算功能:
```
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Calculator extends JFrame implements ActionListener {
private JTextField inputField; // 文本框,用于接收用户输入和显示计算结果
private JButton button0, button1, button2, button3, button4, button5, button6, button7, button8, button9; // 数字按钮
private JButton buttonAdd, buttonSub, buttonMul, buttonDiv, buttonEqual, buttonClear; // 运算符和清除按钮
private double num1 = 0.0, num2 = 0.0; // 记录两个操作数
private char op = ' '; // 记录运算符
public Calculator() {
// 设置窗口标题和大小
setTitle("Calculator");
setSize(300, 300);
// 设置布局为网格布局
setLayout(new GridLayout(5, 3));
// 创建组件
inputField = new JTextField();
button0 = new JButton("0");
button1 = new JButton("1");
button2 = new JButton("2");
button3 = new JButton("3");
button4 = new JButton("4");
button5 = new JButton("5");
button6 = new JButton("6");
button7 = new JButton("7");
button8 = new JButton("8");
button9 = new JButton("9");
buttonAdd = new JButton("+");
buttonSub = new JButton("-");
buttonMul = new JButton("*");
buttonDiv = new JButton("/");
buttonEqual = new JButton("=");
buttonClear = new JButton("C");
// 将组件添加到窗口中
add(inputField);
add(button7);
add(button8);
add(button9);
add(button4);
add(button5);
add(button6);
add(button1);
add(button2);
add(button3);
add(button0);
add(buttonAdd);
add(buttonSub);
add(buttonMul);
add(buttonDiv);
add(buttonEqual);
add(buttonClear);
// 注册事件监听器
button0.addActionListener(this);
button1.addActionListener(this);
button2.addActionListener(this);
button3.addActionListener(this);
button4.addActionListener(this);
button5.addActionListener(this);
button6.addActionListener(this);
button7.addActionListener(this);
button8.addActionListener(this);
button9.addActionListener(this);
buttonAdd.addActionListener(this);
buttonSub.addActionListener(this);
buttonMul.addActionListener(this);
buttonDiv.addActionListener(this);
buttonEqual.addActionListener(this);
buttonClear.addActionListener(this);
// 显示窗口
setVisible(true);
}
// 处理按钮点击事件
public void actionPerformed(ActionEvent e) {
String msg = e.getActionCommand(); // 获取按钮的文本
if (msg.equals("C")) { // 清空文本框和操作数
inputField.setText("");
num1 = 0.0;
num2 = 0.0;
op = ' ';
} else if (msg.equals("+")) { // 加法
num1 = Double.parseDouble(inputField.getText());
op = '+';
inputField.setText("");
} else if (msg.equals("-")) { // 减法
num1 = Double.parseDouble(inputField.getText());
op = '-';
inputField.setText("");
} else if (msg.equals("*")) { // 乘法
num1 = Double.parseDouble(inputField.getText());
op = '*';
inputField.setText("");
} else if (msg.equals("/")) { // 除法
num1 = Double.parseDouble(inputField.getText());
op = '/';
inputField.setText("");
} else if (msg.equals("=")) { // 等于号
num2 = Double.parseDouble(inputField.getText());
double result = 0.0;
switch (op) { // 根据运算符计算结果
case '+':
result = num1 + num2;
break;
case '-':
result = num1 - num2;
break;
case '*':
result = num1 * num2;
break;
case '/':
result = num1 / num2;
break;
}
inputField.setText(Double.toString(result));
num1 = 0.0;
num2 = 0.0;
op = ' ';
} else { // 数字
inputField.setText(inputField.getText() + msg);
}
}
public static void main(String[] args) {
Calculator calculator = new Calculator();
}
}
```
阅读全文
相关推荐
















