简易计算器-课后程序(JAVA基础案例教程-黑马程序员编著-第十一章-课后作业)
嘿,你还在用那个老掉牙的实体计算器吗?别告诉我你还没尝试过自己动手做一个!这篇文章教你如何用Java Swing打造一个简易的图形化计算器。没错,就是那种可以用鼠标点点点就能完成加减乘除的小玩意儿。听起来是不是很简单?别急,问题来了:你知道怎么把一堆按钮和文本框变成真正能用的计算器吗?
首先,得搞清楚计算器的“骨架”:界面组件、事件监听器和计算逻辑。就像搭积木一样,先把按钮和文本框摆好,然后让它们“听懂”你按下的每个数字和符号。听起来简单,但实际操作中,你可能会遇到不少坑。比如,怎么处理用户连续输入多个运算符?怎么确保计算结果不会溢出?这些问题,文章都给出了解答:通过状态开关来控制输入方向,避免重复运算。
但别以为这就结束了!你有没有想过,这个简易计算器还能怎么改进?比如,加上科学计算功能,或者让它支持更复杂的数学运算。甚至,你可以尝试把它移植到手机端,做成一个APP。想象一下,自己亲手打造的计算器,每天被别人使用,是不是很有成就感?所以,别光看文章,动手试试吧,谁知道下一个“计算器大师”会不会就是你呢?
【案例11-2】 简易计算器
【案例介绍】
1.案例描述
本案例要求利用Java Swing 图形组件开发一个可以进行简单的四则运算的图形化计算器。
2.运行结果
运行结果
【案例分析】
要制作一个计算器,首先要知道它由哪些部分组成,如下图所示:
一个简单的图形化界面计算器,需要由界面组件、组件的时间监听器和具体的事件处理逻辑组成。
实现一个简易图形化界面计算器可分以下几个步骤:
1.UI组件创建和初始化:包括窗体的创建,显示计算结果文本框、清除按钮、数字按钮、运算符等按钮的初始化。
2.在窗体中添加UI组件:包括放置数字键及运算符面板、放置清除框面板。
3.布局结束之后,就是计算器的难点:编写事件处理程序。
4.按键的响应实现。
5.计算逻辑的实现。
6.注册监听器
【案例实现】
Calculator.java
- package chapter1102;
- import java.awt.*;
- import java.awt.event.*;
- import javax.swing.*;
- import java.util.Vector;
- import java.math.BigDecimal;
- public class Calculator {
- // 操作数1,为了程序的安全,初值一定设置,这里我们设置为0。
- String str1 = "0";
- // 操作数2
- String str2 = "0";
- // 运算符
- String signal = "+";
- // 运算结果
- String result = "";
- // 以下k1至k5为状态开关
- // 开关1用于选择输入方向,将要写入str1或str2
- // 为 1 时写入 str1,为 2 时写入 str2
- int k1 = 1;
- // 开关 2 用于记录符号键的次数
- // 如果 k2>1 说明进行的是 2+3-9+8 这样的多符号运算
- int k2 = 1;