21xrx.com
2024-12-27 04:23:45 Friday
登录
文章检索 我的文章 写文章
Java初学者项目:简易计算器实现
2023-06-15 15:00:49 深夜i     --     --
Java初学者 GUI OOP编程

Java是一种高级编程语言,适用于任何类型的开发,从Web应用程序到桌面应用程序,甚至嵌入式系统。对于正在学习Java的初学者来说,一个好的项目可以帮助他们巩固所学知识,加强实践能力。

在本文中,我们将介绍一个简单的Java项目——简易计算器的实现。通过这个项目,您将学习如何使用Java语言来创建GUI应用程序,并利用Java的OOP特性来实现计算器的基本功能。

我们使用面向对象的编程思想来实现这个计算器。我们首先创建一个Calculator类,该类代表整个计算器:


import javax.swing.*;

public class Calculator {

    private JFrame frame;

    private JTextField textField;

    private JButton[] buttons;

    private JPanel panel;

    private String[] buttonLabels = {"7", "8", "9", "+", "4", "5", "6", "-", "1", "2", "3", "*", "0", ".", "=", "/"};

    private String currentInput = "";

    private String currentOperator = "";

    private double currentValue = 0.0;

    private boolean resetInput = false;

    public void createGUI() {

        frame = new JFrame("Calculator");

        panel = new JPanel();

        textField = new JTextField(14);

        textField.setHorizontalAlignment(JTextField.RIGHT);

        buttons = new JButton[buttonLabels.length];

 

        for (int i = 0; i < buttonLabels.length; i++) {

            buttons[i] = new JButton(buttonLabels[i]);

            buttons[i].addActionListener(new ButtonListener());

            panel.add(buttons[i]);

        }

 

        panel.add(textField);

        frame.add(panel);

        frame.pack();

        frame.setVisible(true);

        frame.setResizable(false);

        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    }

    public static void main(String[] args) {

        Calculator calculator = new Calculator();

        calculator.createGUI();

    }

}

这里我们定义了一个Calculator类并为其实现了一个createGUI()方法,该方法创建了一个计算器的GUI。GUI由一个JFrame,一个JTextField和各种JButton组成。利用addActionListener()方法为每个按钮添加了一个监听器,以便在用户单击按钮时执行相应的操作。

在上面的代码中,我们还定义了一些成员变量。currentInput、currentOperator和currentValue用于跟踪用户的输入和计算器的当前状态。resetInput变量用于帮助我们处理连续运算。

我们还实现了一个ButtonListener类,该类实现了ActionListener接口,以便在按钮被单击时执行相应操作:


private class ButtonListener implements ActionListener {

        public void actionPerformed(ActionEvent e) {

            String command = e.getActionCommand();

 

            if ((command.charAt(0) >= '0' && command.charAt(0) <= '9') || command.equals(".")) {

                handleNumber(command);

            } else {

                handleOperator(command);

            }

        }

    }

handleNumber()和handleOperator()方法分别处理数字输入和运算符输入。这两个方法将调用Calculator类中的其他方法来完成其工作。

本项目中的完整代码可以在GitHub上找到:https://github.com/yangchong211/YC-Knowledge-Java。

通过这个简单的Java项目,您可以学到很多东西。您将掌握Java Swing编程,学习Java OOP编程,并加强您的Java编程能力。现在就开始编写您自己的简单计算器,并享受学习Java编程的乐趣吧!

  
  

评论区

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