- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java课程设计++计算器..doc
JAVA程序设计期末结课大作业
姓名 张可新
学号
班级 信工1202
题目 java课程设计++计算器
成绩汇总
考 核 内 容 成 绩 程序实现的功能(10分) 分) 分) 0分) 运行结果(10分) 总成绩 阅卷人
目录
一、课程设计任务及要求 5
二、需求分析 5
三、设计思路 6
四、详细设计 7
五、运行调试与分析讨论 12
六、设计体会与小结 14
七、参考文献 15
八、附录 16
一、课程设计任务及要求设计思路
图3-1
设计思路:
根据所设计出来的界面,首先要设计其GUI界面,总体界面有一个文本框,20个按钮,总体界面用BorderLayout布局,文本框放置在最NORTH,然后0到9以及+,-,*,/等按钮放置到一个面板Panel中,完成界面设计。
设计计算流程,首先点击数字按钮时,将按钮数值添加到文本框当中,并将该数值保存到一个字符串中,再次点击数字按钮时,将之前保存的字符串与新的数值拼接起来,再添加到文本框当中,直到点击运算符按钮时,将文本框当中的字符串保存在一个字符串变量中,然后重置文本框内容,将运算符号显示到文本框中,随后输入第二个计算数据时,用同样的办法保存数据,最后通过控制“=”运算符先将字符串数据转化成双精度类型,然后计算出结果并显示到文本框当中。
基本运算设计完成以后则开始考虑其他个别功能的实现,例如倒数、清零、退格等功能的实现,清零直接重置文本框内容,退格功能则采用substring函数截取字符串长度。
四、详细设计
1.程序流程图:
2.主要代码展示及说明:
总体代码的设计:
程序采用继承windowadapter类,新建Jframe窗体,利用数组来定义JBotton按钮,同时利用数组注册监听,采用4行5列网格布局,完成计算器界面的基本设置,在窗体的正常关闭方面,采用匿名类实现窗体的正常关闭。最后对按钮进行计算分析,分别设定输入数据的A类、运算符控制的Opertion类,退格功能的BackSpace类、计算结果的Result类等等,一步步实现计算器的基本功能!
(1)类A的设计(数据的输入)
class A implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
String a = Jtext.getText();
String s = e.getActionCommand();
if(a.equals(0.)||a.equals(+)||a.equals(-)||a.equals(*)||a.equals(/))
Jtext.setText(s);
else
{
if(flag2)
{
Jtext.setText(s);
flag2=false;
}
else
Jtext.setText(a+s);
}
}
}
功能解释:程序开始时,程序初始化文本框的内容为“0.”,点击数字按钮,则调用类A,首先用a来获取当前文本框内容,s来获取按钮数值,然后进行判断,若a的值为上述代码的值则输出s的值,再次点击数字按钮时,再次调用A类,此时a的值为上次输入的s值,第一个if语句不满足,执行下个if语句if(flag2),flag2初始值为false,该语句的功能是在执行了“=”号按钮时,防止新的数字按钮的值合并到到已经得出的结果上,例如:12+12=24,此时再点击数字按钮3时,则文本框内容被重置,输出数值3,而不是243,如果if(flag2)不满足,则将字符串a和s合并并输出,得出第一个要计算的数据。
(2)类Opertion的设计:(运算符的控制)
class Opertion implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
cal=e.getActionCommand();
if(flag1==true)
x=Jtext.getText();
Jtext.setText(cal);
flag1=false;
}
}
功能解释:当点击运算符控制按钮时,首先将运算符的数值赋值给cal(初值为空),紧接着进行判断,flag1初值为ture,该类的作用为在点击运算符按钮时,将计算的第一个数据保存在x字符串变量当中,然后将文本框内容重置为点击的运算符的数值,类的
文档评论(0)