21xrx.com
2025-04-24 00:56:39 Thursday
文章检索 我的文章 写文章
Java图形界面设计计算器:从入门到实现
2023-06-15 10:29:54 深夜i     11     0
Java GUI 计算器

Java作为一种流行编程语言,可以用于各种应用程序的开发,包括常见的计算器程序。在本文中,我们将分享如何使用Java图形用户界面(GUI)设计一个简单的计算器。

我们将使用Java Swing类库和Java AWT(抽象窗口工具包)来构建我们的计算器应用程序。我们首先需要在计算器界面上放置按钮和文本框,以及监听这些事件的代码。

下面是一个简单的Java GUI计算器代码:

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Calculator extends JFrame implements ActionListener{
  private JTextField textField;
  private JButton[] buttons;
  private String[] labels = {"C", "del", "/", "7", "8", "9", "*", "4", "5", "6", "-", "1", "2", "3", "+", "0", ".", "="};
  private JPanel panel;
  Calculator(){
    setTitle("Calculator");
    setLayout(null);
    setBackground(Color.LIGHT_GRAY);
    textField = new JTextField(20);
    textField.setHorizontalAlignment(JTextField.RIGHT);
    textField.setEditable(false);
    panel = new JPanel();
    panel.setLayout(new GridLayout(4, 4, 0, 0));
    buttons = new JButton[20];
    for (int i = 0; i < 20; i++) {
      buttons[i] = new JButton(labels[i]);
      buttons[i].setForeground(Color.BLUE);
      panel.add(buttons[i]);
      buttons[i].addActionListener(this);
    }
    getContentPane().add("North", textField);
    getContentPane().add("Center", panel);
    setBounds(300, 200, 300, 250);
    setVisible(true);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
  public void actionPerformed(ActionEvent e) {
    String command = e.getActionCommand();
    if (command.charAt(0) == 'C') {
      textField.setText("");
    } else if (command.charAt(0) == '=') {
      textField.setText(evaluate(textField.getText()));
    } else {
      textField.setText(textField.getText() + command);
    }
  }
  public static String evaluate(String expression) {
    char[] arr = expression.toCharArray();
    int len = arr.length;
    for (int i = 1; i < len; i++) {
      if (arr[i] == '+' || arr[i] == '-') {
        String left = expression.substring(0, i);
        String right = expression.substring(i + 1, len);
        double result = 0;
        if (arr[i] == '+') {
          result = Double.parseDouble(left) + Double.parseDouble(right);
        } else {
          result = Double.parseDouble(left) - Double.parseDouble(right);
        }
        return Double.toString(result);
      }
    }
    return "";
  }
  public static void main(String[] args) {
    Calculator calculator = new Calculator();
  }
}

在这个例子中,我们定义了一个Calculator类,它包含了JTextField,JPanel和JButton对象,用于创建计算器的用户界面。我们使用了JTextField对象来显示用户输入的数字和结果,用JButton对象表示计算器的按钮。这个程序还使用了一个evaluate方法来计算表达式的结果。

使用Java语言构建GUI计算器应用程序可以为人们提供便利,Java强大的线程控制和网络连接支持使得Java成为流行的编程语言之一。通过本文的实例,您可以学习如何在Java中设计和实现简单的GUI应用程序。

  
  

评论区