2022年java课程设计报告—计算器.pdf
《2022年java课程设计报告—计算器.pdf》由会员分享,可在线阅读,更多相关《2022年java课程设计报告—计算器.pdf(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、java 课程设计报告计算器目录一、课程设计目的 . 2 二、课程设计任务、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、2 2、1、设计任务 . 2 2、2、课程设计要求: . 2 2、3、需求分
2、析 . 2 三、开发工具与平台、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 3 3、1、开发工具 . 3 3、2、开发平台 . 3 四、设计思路、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、
3、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 4 4、1、界面设计、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、
4、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、4 4、2、1、逻辑设计 . 3 4、2、2、程序流程图、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、
5、、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、5 4、2、3、主要代码展示及说明、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、5 4、3、 程序测试 . 7 五、实验小结.
6、 9 六、附录(程序代码 ) . 9 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 1 页,共 14 页 - - - - - - - - - - java 课程设计报告计算器一、课程设计目的1、熟练掌握 java面向对象编程。2、选择合适的数据结构实现需求。3、熟练使用各种控制结构。4、GUI 组件、事件处理技术。二、课程设计任务2、1、设计任务设计一个简易的计算器 ,可以进行四则运算 :加、减、乘、除等 (限于十进制下) 程序要求 : (1)应具有相应的界面 ,可参考 Windows 操作系统自带的计
7、算器界面。(2)操作符号定为 : “+”, “-”, “*”, “/ ”, “+/-” 等。(按国际惯例设计 ) (3)用户通过点击程序界面上按钮,实现数字、运算符的输入操作。(4)以上部分为必须完成的内容。选作部分 : (1)具有操作符号 “1/x ”, “sqrt ”(开方), “、”(小数功能 )等。2、2、课程设计要求 : ( 1)应用自己所学课程知识完成对计算器的基本任务。(2)查阅相关资料 ,学习与掌握项目中涉及的新知识,提高自学能力。(3)通过应用java 程序编写计算器来提升自己对简单的图形界面有一定的掌握与了解。2、3、需求分析1. 设计的计算器可以完成加法、减法、乘法、除法
8、的简单运算。2. 实现一些简单的扩展运算 , 如: 正负号、倒数、退格、清零等功能。3. 添加小数点功能 , 用以实现浮点型数据的计算。4. 使用布局管理器设计一个计算器的界面, 使用事件监听器处理数据的输入, 并完成相关的计算。三、开发工具与平台精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 2 页,共 14 页 - - - - - - - - - - java 课程设计报告计算器3、1、开发工具Microsoft Windows 7 旗舰版3、2、开发平台JDK1 、6、0-02 与 UE 编译器四、
9、设计思路4、1、界面设计 :( 如图 3-1) 图 3-1 4、2、1、逻辑设计 : (1) 根据所设计出来的界面 , 首先要设计其 GUI界面, 总体界面有一个文本框,20 个按钮 , 总体界面用 BorderLayout 布局, 文本框放置在最NORTH, 然后 0 到 9 以及+,-,*,/等按钮放置到一个面板Panel 中, 完成界面设计。(2) 设计计算流程 , 首先点击数字按钮时 , 将按钮数值添加到文本框当中,并将该数值保存到一个字符串中, 再次点击数字按钮时 , 将之前保存的字符串与新的数值拼接起来, 再添加到文本框当中 , 直到点击运算符按钮时 , 将文本框当中的字符串保存在
10、一个字符串变量中, 然后重置文本框内容 , 将运算符号显示到文本框中, 随后输入第二个计算数据时, 用同样的办法保存数据 , 最后通过控制“ =”运算符先将字符串数据转化成双精度类型 , 然后计算出结果并显示到文本框当中。(3) 基本运算设计完成以后则开始考虑其她个别功能的实现, 例如倒数、清零、退格等功能的实现, 清零直接重置文本框内容, 退格功能则采精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 3 页,共 14 页 - - - - - - - - - - java 课程设计报告计算器用 substr
11、ing函数截取字符串长度。4、2、2、程序流程图 : 4、2、3、主要代码展示及说明 : 总体代码的设计 :程序采用继承 windowadapter 类, 新建 Jframe 窗体, 利用数组来定义JBotton 按钮, 同时利用数组注册监听 , 采用 4 行 5 列网格布局 , 完成计算器界面的基本设置 , 在窗体的正常关闭方面 , 采用匿名类实现窗体的正常关闭。最后对按钮进行计算分析, 分别设定输入数据的A类、运算符控制的Opertion 类, 退格功能的 BackSpace类、 计算结果的 Result 类等等 , 一步步实现计算器的基本功能!(1) 类 A的设计 ( 数据的输入 ) c
12、lass 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) 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - -
13、 - - - -第 4 页,共 14 页 - - - - - - - - - - java 课程设计报告计算器 Jtext、setText(s); flag2=false; else Jtext、setText(a+s); 功能解释 : 程序开始时 , 程序初始化文本框的内容为“0、 ”, 点击数字按钮 ,则调用类 A,首先用 a 来获取当前文本框内容 ,s 来获取按钮数值 , 然后进行判断, 若 a 的值为上述代码的值则输出s 的值, 再次点击数字按钮时 , 再次调用 A类, 此时 a 的值为上次输入的s 值, 第一个 if 语句不满足 , 执行下个 if语句 if(flag2),flag2
14、初始值为 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(
15、); if(flag1=true) x=Jtext 、getText(); Jtext、setText(cal); flag1=false; 功能解释 : 当点击运算符控制按钮时, 首先将运算符的数值赋值给cal( 初值为空), 紧接着进行判断 ,flag1初值为 ture, 该类的作用为在点击运算符按钮时, 将计算的第一个数据保存在x 字符串变量当中 , 然后将文本框内容重置为点击的运算符的数值, 类的结尾将 flag1 赋值为 false,防止再次点击运算符按钮时改变了x 的值。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - -
16、- - - - - -第 5 页,共 14 页 - - - - - - - - - - java 课程设计报告计算器( 附: 此时文本框内容为运算符的值, 输入第二个计算数据时, 点击数字按钮 ,则再次调用 A类, 此时满足 A类中第一个 if语句, 文本框内容被重置为数字按钮的值 , 接下来与获取第一个计算数据步骤一样, 直到点击“ =”号运算符为止! ) (3) 类 Result 的设计 :( 计算并输出结果 ) class Result implements ActionListener /计算并显示结果 public void actionPerformed(ActionEvent e
17、) double num1; num1=Double 、parseDouble(x); y=Jtext、getText(); double num2; num2=Double 、parseDouble(y); double result=0; if(num2!=0) if(cal 、equals(+) result=num1+num2; if(cal 、equals(-) result=num1-num2; if(cal 、equals(*) result=num1*num2; String s1=Double 、toString(result); Jtext、setText(s1); if(
18、cal 、equals(/) if(num2=0) Jtext、setText(除数不能为0); else result=num1/num2; String s1=Double 、toString(result); Jtext、setText(s1); flag1=true; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 6 页,共 14 页 - - - - - - - - - - java 课程设计报告计算器flag2=true; 功能解释 : 首先定义两个 Double 型 num1,num2,将之
19、前保存的第一个计算数据 x 强制转换为 Double 型后赋值给 num1,接着用字符串变量y 来获取当前文本框的内容 , 即第二个计算数据的值 , 同样再将其强制转换Double 型后赋值给 num2,然后进行运算符判断 , 对cal 的值进行比较 , 然后进行相应的计算 ,将计算的结果转换成字符串后将其输出到文本框中, 在类的最后将flag1 、flag2 赋值为 true, 作用就是将计算的结果当作第二次计算的数据进行再运算, 即将结果重新赋值给x 作为第一个计算数据!( 附: 在此类中还考虑了当除数为零的情况。) (4) 类 BackSpace的设计 :( 功能类退格 ) class
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 java 课程设计 报告 计算器
限制150内