一步步教您编写Java计算器:完整源代码分享

作者:江门麻将开发公司 阅读:22 次 发布时间:2023-05-07 10:31:40

摘要:计算器是我们日常生活中经常使用的工具之一,而Java计算器则是计算器中的一个重要工具,它是由Java语言编写的,可以进行各种复杂的算术运算。如果您想了解Java计算器的源代码,那么本篇文章就是为您而写的。编写Java计算器的源代码有很多,不同的编程人员都有不同的风格和方法...

计算器是我们日常生活中经常使用的工具之一,而Java计算器则是计算器中的一个重要工具,它是由Java语言编写的,可以进行各种复杂的算术运算。如果您想了解Java计算器的源代码,那么本篇文章就是为您而写的。

一步步教您编写Java计算器:完整源代码分享

编写Java计算器的源代码有很多,不同的编程人员都有不同的风格和方法,但是本文将向您介绍一个比较简单、易懂的源代码。以下是完整的源代码:

```

import java.awt.*; //导入使用窗口

import java.awt.event.*; //导入使用事件

public class Calculator extends Frame implements ActionListener {

//创建计算器类,继承Frame并实现ActionListener

private TextField tfResult; //定义一个文本框tfResult

private double num1, num2, result; //定义3个double类型变量,并初始化为0

private String operator; //定义一个字符型变量operator

public Calculator() {

//构造方法

super("Java Calculator"); //设置计算器框的名称

setSize(400, 400); //设置窗口大小

tfResult = new TextField("0"); //初始化文本框tfResult

add(tfResult, BorderLayout.NORTH); //将文本框加入到窗口的最上方

Panel buttonPanel = new Panel(); //创建一个面板

buttonPanel.setLayout(new GridLayout(5, 4, 3, 3)); //设置面板布局为网格布局

String[] buttonLabels = {"7", "8", "9", "+", "4", "5", "6", "-", "1", "2", "3", "*", ".", "0", "=", "/", "C", "CE"}; //定义一个字符串数组存储按钮标签

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

Button b = new Button(buttonLabels[i]); //创建按钮

buttonPanel.add(b); //将按钮加入到面板

b.addActionListener(this); //添加按钮事件监听器

}

add(buttonPanel, BorderLayout.CENTER); //将面板加入到窗口的中心

addWindowListener(new WindowAdapter() { //添加窗口事件监听器,使得该窗口能够被关闭

public void windowClosing(WindowEvent e) {

System.exit(0);

}

});

setVisible(true); //将计算器框设为可见状态

}

public void actionPerformed(ActionEvent e) {

//按钮事件处理方法

String buttonLabel = e.getActionCommand(); //获取按钮标签

if (buttonLabel.equals("C")) { //如果按钮被按下是C(清除按钮)

num1 = 0; //这3句的作用为将3个double变量全部重置为0

num2 = 0;

result = 0;

tfResult.setText("0"); //将文本框内容设置为0

} else if (buttonLabel.equals("CE")) { //如果按钮被按下是CE(清除上一步按钮)

String text = tfResult.getText(); //获取文本框内容

if (text.length() > 0) { //如果文本框不为空

text = text.substring(0, text.length() - 1); //获取文本框内容的子字符串

tfResult.setText(text); //更新文本框内容

}

} else if (buttonLabel.equals("+") || buttonLabel.equals("-") || buttonLabel.equals("*") || buttonLabel.equals("/")) { //如果按钮被按下是加减乘除

num1 = Double.parseDouble(tfResult.getText()); //将文本框内容转换为double类型并赋值给num1

operator = buttonLabel; //将当前的操作符赋值给operator

tfResult.setText("0"); //将文本框内容重置为0

} else if (buttonLabel.equals("=")) { //如果按钮被按下是等于号

num2 = Double.parseDouble(tfResult.getText()); //将文本框内容转换为double类型并赋值给num2

if (operator.equals("+")) { //如果操作符为加号

result = num1 + num2; //做加法运算

} else if (operator.equals("-")) { //如果操作符为减号

result = num1 - num2; //做减法运算

} else if (operator.equals("*")) { //如果操作符为乘号

result = num1 * num2; //做乘法运算

} else if (operator.equals("/")) { //如果操作符为除号

result = num1 / num2; //做除法运算

}

tfResult.setText("" + result); //将运算结果显示到文本框中

} else { //如果按钮被按下的是数字键或小数点

String text = tfResult.getText(); //获取文本框内容

if (text.length() == 1 && text.charAt(0) == '0' && !buttonLabel.equals(".")) {

//如果文本框内容为0并且该按钮不是小数点按钮

tfResult.setText(buttonLabel); //将按钮的标签赋值给文本框内容

} else {

//否则

tfResult.setText(text + buttonLabel); //将按钮的标签以及文本框内容组合起来,更新文本框内容

}

}

}

public static void main(String[] args) {

//主方法

Calculator calculator = new Calculator(); //创建一个计算器对象

}

}

```

在以上的源代码中,我们使用Java的GUI库,即java.awt和java.awt.event来创建了一个简单的计算器。先从前往后解释下源代码的具体内容:

第1行-第3行:使用import语句导入Java的GUI库

第5行:创建了一个名为Calculator的类,并继承自Frame类,同时实现ActionListener接口

第7-10行:定义了三个变量(num1,num2和result),用于存储进行计算的数值;并定义一个变量(operator)用于存储操作符

第12行:创建了一个名为tfResult的TextField类,用于在计算器窗口中进行数字、符号的显示

第14行:使用setSize()方法来设置计算器窗口大小

第16-18行:使用add()方法将tfResult文本框加入到在窗口的北部,作为计算器的显示区域

第20行:创建一个名为buttonPanel的Panel类,用于存储计算器的按钮

第22行:使用setLayout()方法设置buttonPanel的布局格式

第24行:定义了一个标签为String数组buttonLabels[],存储着将要加入到面板上的按钮

第26-34行:使用for循环遍历计算器按钮的标签数组,并定义Button变量b将标签内容label作为参数,并将按钮加入到buttonPanel上。同时,每个按钮还需要添加监听器addActionListener(),以响应点击事件

第36-42行:使用add()方法将buttonPanel添加至窗口中心位置

第44-49行:使用addWindowListener()方法为窗口添加事件监听,这样能在用户关闭窗口时终止程序

第51行:使用setVisible()方法来显示计算器框

第54-155行:接下来介绍Calculator()方法

第57行:使用super("Java Calculator")设置计算器框的名称

第59行:使用setSize()方法设置计算器窗口大小为400*400

第61-63行:初始化文本框tfResult,用于在计算器窗口中进行数字、符号的显示。在初始化时,tfResult默认为"0"

第65-67行:使用add()方法将tfResult文本框加入到在窗口的北部,作为计算器的显示区域

第69行:创建一个名为buttonPanel的Panel类,继承自Frame类

第71行:使用setLayout()方法设置buttonPanel的布局格式

第73行:定义了一个标签为String数组buttonLabels[],存储着将要加入到面板上的按钮

第75-83行:使用for循环遍历计算器按钮的标签数组,并定义Button变量b将标签内容label作为参数,并将按钮加入到buttonPanel上。同样,每个按钮还需要添加监听器addActionListener(),以响应点击事件

第85-90行:使用add()方法将buttonPanel添加至窗口中心位置

第92-98行:使用addWindowListener()方法为窗口添加事件监听,这样能在用户关闭窗口时终止程序

第100行:使用setVisible()方法来显示计算器框

第112-146行:接下来介绍actionPerformed()方法

第114行:使用getActionCommand()方法获取被按下的按钮的标签名称,并将其存储在字符串变量buttonLabel中

第116-120行:如果按钮标签为"C"(清除按钮),则将三个num1,num2和result全部清空为0,将文本框的内容设置为"0"

第122-125行:如果按钮标签为"CE"(清除上一步),则在文本框不为空的情况下,采用substring()方法获取文本框内容的子字符串,将其设置为文本框内容

第127-131行:如果按钮标签为"+"、"-"、"*"或"/",则将文本框内容转换为double类型,并分别存储在num1和operator中,并将文本框内容设置为"0"

第133-142行:如果按钮标签为"=",则将文本框内容转换为double类型并存储在num2中,判断操作符为加、减、乘或除,分别进行加减乘除运算,并将结果存储在result中,并将文本框内容设置为结果

第144-153行:如果按钮标签为数字或小数点,则判断文本框内容是否为"0"和是否为小数点,并更新文本框内容

第157-160行:接下来定义了主函数main(),用于创建一个Calculator对象,即创建出一个计算器窗口

以上就是Java计算器源代码的全部内容,您可以把这些代码复制粘贴到Eclipse中,编译运行即可。总体上,这里介绍的源代码非常简单,适合Java初学者进行学习。通过这个实例,您不仅可以学习到如何使用Java的GUI库来创建计算器窗口,还可以了解到如何使用变量、运算符、输入输出语句等Java的基础语法。希望这篇文章会为您提供帮助,让您能够更轻松的入门Java编程。

  • 原标题:一步步教您编写Java计算器:完整源代码分享

  • 本文链接:https:////qpzx/5505.html

  • 本文由江门麻将开发公司飞扬众网小编,整理排版发布,转载请注明出处。部分文章图片来源于网络,如有侵权,请与飞扬众网联系删除。
  • 微信二维码

    CTAPP999

    长按复制微信号,添加好友

    微信联系

    在线咨询

    点击这里给我发消息QQ客服专员


    点击这里给我发消息电话客服专员


    在线咨询

    免费通话


    24h咨询☎️:166-2096-5058


    🔺🔺 棋牌游戏开发24H咨询电话 🔺🔺

    免费通话
    返回顶部