21xrx.com
2024-12-23 00:06:26 Monday
登录
文章检索 我的文章 写文章
用 Java 实现一个简易计算器
2023-06-13 04:40:56 深夜i     --     --
Java 计算器 GUI

随着计算机技术的不断发展,计算器已经成为我们日常生活和工作中必不可少的工具。而如果你想要进一步深入了解计算器背后的实现原理,那么自己实现一个简易计算器就是个不错的选择。在本文中,我将通过 Java 语言编写一个简易计算器,让读者了解其中的实现方法和代码逻辑。

首先,我们需要一个窗体来显示计算器的界面。代码如下:


// 导入必要的包

import javax.swing.*;

import java.awt.*;

public class Calculator extends JFrame {

  // 属性

  private JPanel panel;

  private JTextField textField;

  public Calculator() {

    // 设置窗体标题

    super("简易计算器");

    // 窗体布局

    setLayout(new BorderLayout());

    // 文本框

    textField = new JTextField();

    add(textField, BorderLayout.NORTH);

    // 按钮面板

    panel = new JPanel(new GridLayout(4, 4));

    add(panel, BorderLayout.CENTER);

    // 按钮

    addNumberButton("7");

    addNumberButton("8");

    addNumberButton("9");

    addButton("/");

    addNumberButton("4");

    addNumberButton("5");

    addNumberButton("6");

    addButton("*");

    addNumberButton("1");

    addNumberButton("2");

    addNumberButton("3");

    addButton("-");

    addNumberButton("0");

    addButton(".");

    addButton("=");

    addButton("+");

    // 窗体设置

    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    setLocationRelativeTo(null);

    setSize(300, 300);

    setVisible(true);

  }

  private void addNumberButton(String label) {

    JButton button = new JButton(label);

    button.addActionListener(e -> textField.setText(textField.getText() + label));

    panel.add(button);

  }

  private void addButton(String label) {

    JButton button = new JButton(label);

    button.addActionListener(e -> {

      String text = textField.getText();

      if (text.length() > 0 && Character.isDigit(text.charAt(text.length() - 1))) {

        textField.setText(text + label);

      }

    });

    panel.add(button);

  }

  public static void main(String[] args) {

    // 创建一个计算器窗体对象

    new Calculator();

  }

}

在上述代码中,我们定义了一个名为 `Calculator` 的类,并继承了 `JFrame` 类,这样我们就可以很方便地创建一个拥有窗体的 GUI 程序。

接着,我们通过 `setLayout()` 方法设置了窗体的布局方式为 `BorderLayout`,这样我们就可以将控件分别放置到窗体的不同位置。

在程序运行时,我们会看到窗体的上半部分是一个文本框,用于显示计算结果,下半部分是一个 4x4 的按钮面板,包括数字键和运算符键。

在 `addNumberButton()` 和 `addButton()` 方法中,我们分别添加了数字和运算符按钮,并给它们设置事件处理程序。当用户点击按钮时,程序会将对应的数字或运算符添加到文本框中,完成相应的操作。

最后,在 `main()` 方法中,我们创建了一个 `Calculator` 对象,并通过 `setVisible(true)` 显示出来。

到这里,我们已经实现了一个基本的简易计算器。接下来,我们可以考虑进一步完善它,例如添加更多运算符、支持负数计算等等。同时,大家也可以自己动手实现一些新的功能,发挥自己的创造力。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复