Java论文信息化论文基于JAVA的简单计算器的设计与实现.docVIP

  • 10
  • 0
  • 约3.04千字
  • 约 7页
  • 2018-10-09 发布于重庆
  • 举报

Java论文信息化论文基于JAVA的简单计算器的设计与实现.doc

Java论文信息化论文基于JAVA的简单计算器的设计与实现

Java论文信息化论文:基于JAVA的简单计算器的设计与实现 摘要:随着人们了解信息越来越数据化,高速度的获取信息的同时,对计算机的要求也越来越高,不仅在其容量上越来越大,特别是在其功能上要求的越来越多,数据类型和精度越来越准确。该文用java实现简单计算器的设计。java是一种简单的,面象对象的,分布式的,解释的,键壮的,安全的,结构的,中立的,可移植的,性能很优异的多线程的,动态的语言。通过设计,达到了预期功能效果。 关键词:java;信息化;计算器 1 设计要求 计算器一般是指“电子计算机器”,一般由运算器、存储器、键盘、显示器、电源和一些可选外围设备组成。该设计可以进行十进制下的四则运算(加、减、乘、除)、开根号、百分号、求倒数,还可以实现数值的符号转换及计算器有关內存操作 backspace表示退格, ce表示将当前文本框內数据清除,c表示文本框內数据清除,同时 var,answer清0。此外还提供了“编辑”、“查看”、“帮助”三个菜单项,使用者可通过使用菜单项实现某些功能。在java—editplus下直接运行(calculator.java)即可,界面为灰白对称。 2 工作原理图、功能规划 2.1 计算器的界面的设计 设计的计算器窗口中整体使用的是borderlayout布局,在borderlayout布局中又嵌套使用了cardlayout布局。菜单栏上有编辑、查看、帮助三个菜单。在菜单下分别是复制、粘帖、标准型、科学型及数字分组、还有帮助主题、关于计算器等菜单项,窗口的中间是文本框区域以白色为背景用来输入输出数据,窗口下面是按钮用来实现各种操作。 2.2 相应功能设计 编辑、查看、帮助菜单是通过jmenu类来实现的,其中复制、粘帖、标准型、科学型及数字分组、还有帮助主题、关于计算器等菜单项都是通过jmenuitem类来实现的,帮助主题菜单项中定义了一个含有滚动条的多行文本区。加、减、乘、除、等于以及求百分号操作都是通过double类中的parsedouble()方法来实现的。开根号运算是通过java.lang包中的math类的sqrt()方法来实现的,求倒数运算通过自定义的方法1:double.parsedouble()来实现的,并通过tostring()方法显示。按下+/-按钮时处理方法是自定义的。计算器有关内存操作包括mc操作,ms操作mr操作和m+操作,其中mc操作的功能是将内存清0 ,ms操作的功能是将当前文本框内容保存入内存并显示m,mr的操作的功能是将存储器中的信息输出,m+的功能是将当前文本框里的数据和存储器中数据相加后,再存入存储器。backspace按钮是利用循环将当前字符串中的最后一个字母删除来实现;ce按钮是将当前文本框内数据清除; c按钮是将文本框内数据清除,同时var,answer清0。输入中如果有操作非法,比如按下两次+,捕获异常。 3 主要功能实现代码 1)加、减、乘、除操作: if (temp == buttonadd) { switch (prekey) { case 0: answerd += double.parsedouble(textanswer.gettext()); break; case 1: answerd -= double.parsedouble(textanswer.gettext()); break; case 2: answerd *= double.parsedouble(textanswer.gettext());//返回一个新的 double 值,该值被初始化为用指定文本框表示的值 break; case 3: if (double.parsedouble(textanswer.gettext()) == 0) { textanswer.settext(除数不能为零); clickable = false;} else answerd /= double.parsedouble(textanswer.gettext()); break; default: answerd = double.parsedouble(textanswer.gettext());} textanswer.settext(); prekey = key = 0;} 2)开根号运算: if (temp == buttonsqrt clickable == true) { string s = textanswer.gettext(); if (s.charat(0) == -) { textanswer.settext(负数不能开根号); clickable = false;} else textanswer.settext(double.tostring(java.l

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档