21xrx.com
2024-12-29 19:49:11 Sunday
登录
文章检索 我的文章 写文章
关键词:Java、计算器、代码
2023-06-11 04:19:56 深夜i     --     --

Java计算器代码:轻松实现数学计算

Java是世界上应用最广泛的编程语言之一,也是许多程序员的首选语言,因为它具有良好的跨平台性、高效性和可维护性。在Java编程中,编写一个基本的计算器程序并不难,只需要一些基本的数学运算和用户界面就可以了。

Java计算器的实现方法有很多,其中最常见的一种是使用GUI(图形用户界面)库来创建图形界面,然后使用简单的算法来执行基本的数学计算。以下是一个简单的Java计算器代码示例:

/**

* Java计算器代码示例

*/

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

public class Calculator extends JFrame {

  private JTextField tf;

  private JButton[] btn;

  public Calculator() {

    super("Java计算器");

    initComponents();

    pack();

    setLocationRelativeTo(null);

    setDefaultCloseOperation(EXIT_ON_CLOSE);

    setVisible(true);

  }

  private void initComponents() {

    tf = new JTextField(10);

    tf.setEditable(false);

    JPanel btnPanel = new JPanel(new GridLayout(4, 4, 5, 5));

    // 数字按钮

    btn = new JButton[16];

    for (int i = 0; i < 10; i++) {

      btn[i] = new JButton(Integer.toString(i));

      btn[i].addActionListener(new NumberActionListener(i));

    }

    // 运算符按钮

    btn[10] = new JButton("+");

    btn[11] = new JButton("-");

    btn[12] = new JButton("*");

    btn[13] = new JButton("/");

    btn[14] = new JButton("=");

    btn[15] = new JButton("C");

    for (int i = 10; i < 16; i++) {

      btn[i].addActionListener(new OperatorActionListener(i));

    }

    // 添加数字和运算符按钮到面板

    btnPanel.add(btn[7]);

    btnPanel.add(btn[8]);

    btnPanel.add(btn[9]);

    btnPanel.add(btn[13]);

    btnPanel.add(btn[4]);

    btnPanel.add(btn[5]);

    btnPanel.add(btn[6]);

    btnPanel.add(btn[12]);

    btnPanel.add(btn[1]);

    btnPanel.add(btn[2]);

    btnPanel.add(btn[3]);

    btnPanel.add(btn[11]);

    btnPanel.add(btn[0]);

    btnPanel.add(btn[14]);

    btnPanel.add(btn[10]);

    btnPanel.add(btn[15]);

    Container pane = getContentPane();

    pane.setLayout(new BorderLayout(5, 5));

    pane.add(tf, BorderLayout.NORTH);

    pane.add(btnPanel, BorderLayout.CENTER);

  }

  private class NumberActionListener implements ActionListener {

    private int num;

    public NumberActionListener(int num)

      this.num = num;

    public void actionPerformed(ActionEvent e) {

      tf.setText(tf.getText() + num);

    }

  }

  private class OperatorActionListener implements ActionListener {

    private int op;

    public OperatorActionListener(int op)

      this.op = op;

    public void actionPerformed(ActionEvent e) {

      switch (op) {

        case 10:

          tf.setText(tf.getText() + "+");

          break;

        case 11:

          tf.setText(tf.getText() + "-");

          break;

        case 12:

          tf.setText(tf.getText() + "*");

          break;

        case 13:

          tf.setText(tf.getText() + "/");

          break;

        case 14:

          String equation = tf.getText();

          String[] tokens = equation.split("(?<=[-+*/])|(?=[-+*/])");

          double result = Double.parseDouble(tokens[0]);

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

            double operand = Double.parseDouble(tokens[i + 1]);

            switch (tokens[i]) {

              case "+":

                result += operand;

                break;

              case "-":

                result -= operand;

                break;

              case "*":

                result *= operand;

                break;

              case "/":

                result /= operand;

                break;

            }

          }

          tf.setText(Double.toString(result));

          break;

        case 15:

          tf.setText("");

          break;

      }

    }

  }

  public static void main(String[] args) {

    Calculator calc = new Calculator();

  }

}

如上所述,这个程序具有一个简单的图形用户界面,由一个文本框和16个按钮组成。通过单击数字和运算符按钮来输入数学表达式,然后单击等号按钮来计算结果,最后将结果显示在文本框中。

至此,我们已经编写了Java计算器的示例代码。当然,这只是一个简单的示例,你可以添加更多的功能和算法,以进一步扩展这个程序。总之,Java作为一种非常强大和灵活的开发语言,为我们提供了实现各种各样应用程序的强大工具和框架。

  
  

评论区

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