如何使用Java AWT 创建一个简易计算器

如题所述

本文详述了如何使用 Java AWT 创建简易计算器的步骤。AWT 是一个用于构建图形用户界面的 API,包含用于创建按钮、窗口、框架、文本框等图形元素的类和方法。以下为实现简易计算器的逻辑部分:

在数字按钮部分,按下任意数字按钮后,其值存储在变量 zt 中,与相应的数字连接并显示于标签 l1。对于 NEGATIVE 和 DECIMAL PTS 按钮,操作类似。

算术按钮的逻辑是,将标签 l1 的值转换为 double 类型,存储为变量 num1,并设置标签 l1 为 null。通过一个检查变量来确定点击的是特定算术按钮,如加号,以便在等号按钮触发时执行相应的算术操作。

等号按钮操作包括将标签 l1 的值存储为变量 num2,获取检查变量的值以执行相应的算术操作,并显示结果于标签 l1。

清除按钮将所有变量更新为默认值 0,并将标签 l1 设置为 null,以便开始新的计算。

退格按钮使用 substring 函数删除标签 l1 值的最后一位数字。处理了 StringIndexOutOfBoundsException 异常,即在标签值为 null 时按下退格按钮的情况。

在特殊插件功能中,处理了等于按钮和算术按钮中的异常情况。当将空值转换为双精度值,并尝试执行算术操作时,会生成 NumberFormatException。此时,通过异常处理并打印所需消息,避免程序崩溃。

例如,如果连续点击数字 1、加号和减号,但未输入其他数字,这将被认为是无效格式,生成异常。当标签 l1 为空时点击等号按钮,会显示“请输入数字”提示。

至此,简易计算器的创建过程已完成。以下是完整的代码及 GIF 演示,供参考。
温馨提示:内容为网友见解,仅供参考
无其他回答

如何使用Java AWT 创建一个简易计算器
清除按钮将所有变量更新为默认值 0,并将标签 l1 设置为 null,以便开始新的计算。退格按钮使用 substring 函数删除标签 l1 值的最后一位数字。处理了 StringIndexOutOfBoundsException 异常,即在标签值为 null 时按下退格按钮的情况。在特殊插件功能中,处理了等于按钮和算术按钮中的异常情况。当将空值...

用JAVA编写一个简单的计算器,要求如下
package Computer;import java.awt.BorderLayout;import java.awt.Color;import java.awt.Container;import java.awt.Font;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Stack;import javax.swing.JApplet;import javax.swing.JButton...

求JAVA编写的 简易计算器程序,附上注释
import javax.swing.*;import java.awt.*;import java.awt.event.*;public class Calculator implements ActionListener { String s="",s1;double d1,d2;JFrame jf = new JFrame("小计算器by Graduate") ;JTextField tf = new JTextField();public void init()\/\/实现计算器界面 { Container c...

用Java程序设计语言设计一个计算器
import javax.swing.*;\/\/新的窗口组件包 import java.awt.*;import java.awt.event.*;public class Calculator extends JFrame implements ActionListener { private boolean dotExist, operated, equaled; \/\/ 帮助运算的布尔变量 private double storedNumber; \/\/ 目前的结果 private char lastOperator;...

采用java语言编写一个计算器,该计算器能对正数、负数(这里的正数、负数...
mh1.add(new MenuItem("帮助主题")); mh1.add(new MenuItem("关于计算器")); mh1.addActionListener(this); } int flag=0;\/\/运算符有效标识 int num=0;\/\/用于实现连续运算 double dot=0;\/\/用于标识小数点 double first=0,second=0,result=0;\/\/用于保存第一个数,第二个数和计算结果 double pus...

用JAVA编写一个计算器
\/\/ 计算器数字按钮定义面板class Number_Key extends JPanel {\/*** *\/private static final long serialVersionUID = 1L;JButton zero = new JButton("0"); \/\/ 数字键0JButton one = new JButton("1"); \/\/ 数字键1JButton two = new JButton("2"); \/\/ 数字键2JButton three = new JButton...

用Java设计一个简单的计算器。
无聊写了个,修复了下Bug:import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JTextField;public class Calculate extends JFrame implements Action...

用Java编写一个简单的计算器界面,并且可以实现加减乘除计算,很简单一...
import java.awt.event.WindowListener;public class Calculator { public static void main(String[] args) { Frame f = new Frame("Calculator");final TextField tf = new TextField();Panel p = new Panel();f.setLayout(new BorderLayout());f.add(tf, BorderLayout.NORTH);f.add(p, ...

如何用JAVA语言编写计算器小程序?
jf=new JFrame("任静的计算器1.0:JAVA版");jf.addWindowListener(new WindowAdapter(){ public void windowClosing(){ System.exit(0);} });allButtons=new JButton[16];clearButton=new JButton("清除");jtf=new JTextField(25);jtf.setEditable(false);String str="123+456-789*0.=\/";f...

用java编写科学计算器的代码!一定要有求立方
import javax.swing.*;import java.awt.event.*;class Counter extends WindowAdapter { static JFrame f=new JFrame("计算器");static JTextField text1=new JTextField("0.");static String source="";static String cal="";static String object="";static boolean flag=false;static boolean ...

相似回答
大家正在搜