21xrx.com
2024-11-22 09:37:38 Friday
登录
文章检索 我的文章 写文章
用Java编写一个简单计算器程序
2023-06-15 12:17:42 深夜i     --     --
Java 编程 计算器程序

文章内容:

在本文中,我们将使用Java语言编写一个基本的计算器程序。我们将介绍Java中使用面向对象编程的基础知识,并向您展示如何使用Java Swing创建GUI应用程序。

首先,我们来看一下Java中最基本的面向对象编程概念:类和对象。类是一种用于描述对象的模板或蓝图,而对象是类的一个实例。我们可以使用Java的类来描述计算器的行为。

在Java中,我们可以使用Swing库来创建GUI应用程序,并在其中添加按钮、标签和其他UI组件。我们将使用这些组件来创建一个基本的计算器。

以下是我们的计算器界面的代码:


import javax.swing.*;

import java.awt.*;

public class Calculator {

  private JFrame frame;

  private JPanel panel;

  private JTextField textField;

  public Calculator() {

    frame = new JFrame("简单计算器");

    panel = new JPanel(new BorderLayout());

    textField = new JTextField(20);

    panel.add(textField, BorderLayout.NORTH);

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

    String[] buttonLabels = {

        "7", "8", "9", "/",

        "4", "5", "6", "*",

        "1", "2", "3", "-",

        "0", "C", "=", "+"

    };

    for (String label : buttonLabels) {

      JButton button = new JButton(label);

      button.addActionListener(e -> {

        String text = button.getText();

        if (text.equals("=")) {

          calculate();

        } else {

          textField.setText(textField.getText() + text);

        }

      });

      buttonPanel.add(button);

    }

    panel.add(buttonPanel, BorderLayout.CENTER);

    frame.setContentPane(panel);

    frame.pack();

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    frame.setVisible(true);

  }

  private void calculate() {

    String input = textField.getText();

    String[] tokens = input.split("(?<=\\d)(?=\\D)|(?<=\\D)(?=\\d)");

    int result = Integer.parseInt(tokens[0]);

    for (int i = 1; i < tokens.length - 1; i += 2) {

      String operator = tokens[i];

      int operand = Integer.parseInt(tokens[i + 1]);

      switch (operator) {

        case "+":

          result += operand;

          break;

        case "-":

          result -= operand;

          break;

        case "*":

          result *= operand;

          break;

        case "/":

          result /= operand;

          break;

      }

    }

    textField.setText("" + result);

  }

  public static void main(String[] args) {

    new Calculator();

  }

}

上面的代码使用了Java Swing库来创建用户界面,并为每个按钮添加了一个监听器。当用户单击按钮时,我们更新文本框中的内容或执行计算。

现在,我们可以编译并运行上面的代码,看一下我们的计算器是如何工作的。

  
  

评论区

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