当前位置:文档之家› Java计算器课程设计

Java计算器课程设计

Java课程设计题目:Java计算器学生姓名杨云鹏学号20121325054学院信息与控制学院专业系统工程二O一四年 6 月 3 日课程设计报告书目录一、课程设计任务及要求 (5)二、设计目的 (5)三、操作环境 (5)四、设计场所(机房号、机器号或自己机器) (5)五、设计过程(设计内容及主要程序模块) (6)六、本次设计中用到的课程知识点(列出主要知识16七、设计过程中遇到的问题及解决办法 (16)八、程序清单 (18)Java背景介绍:JAVA是一种可以撰写跨平台应用软件的面向对象的程序设计语言,由升阳(Sun Microsystems)公司的詹姆斯·高斯林(James Gosling)等人于1990年代初开发。

它最初被命名为Oak,目标设定在家用电器等小型系统的编程语言,来解决诸如电视机、电话、闹钟、烤面包机等家用电器的控制和通讯问题。

由于这些智能化家电的市场需求没有预期的高,Sun放弃了该项计划。

就在Oak几近失败之时,随着互联网的发展,Sun看到了Oak在计算机网络上的广阔应用前景,于是改造了Oak,在1995年5月23日以“Java”的名称正式发布了。

Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。

Oracle收购Sun后Java前途未卜。

一、课程设计任务及要求1、课题要求(1)使用图形用户界面:一个文本框;0-9数字按钮;加、减、乘、除运算符;“等于”符号.(2)完成整数、实数的四则运算(加、减、乘、除);(3)通过按钮点击实现数据运算。

(4)实数运算中小数位的精度一致。

2、课题设计思想对于此计算器程序,首先要设计其界面,总体界面有一个文本框,十多个按钮,总体界面用BorderLayout布局。

文本框放置在最NORTH,然后0到9以及+,-,*,/的按钮放置到一个面板Panel中,添加到整体布局的CENTER,界面设计完成。

布局设计好后再添加按钮事件。

对于此程序要考虑到点击加、减、乘、除按钮时是否有点击数字按钮,如果是第一次点击数字按钮或者是点击数字按钮前点击了加、减、乘、除按钮则直接把数字按钮的数值设置到文本框中,否则则应把文本框中的内容加上你所点击按钮的数值设置到文本框中。

这是计算器中的一种:简单计算器,本项目用到了Java中的界面和swing组件以及awt布局,所以简单易用,它能完成如下的几个小功能:点击按钮中的数字键和运算符键就能进行简单的加、乘、乘、除求模四则运算;还能通过用户自己在文本框中输入数字,进行简单运算。

二、设计目的进一步掌握和理解java程序编程;进一步掌握java语言的基本数据类型,熟悉定义变量和使用变量;理解java图形用户界面的基本工作原理和界面设计;巩固窗体的布局设计;掌握窗体按钮控件和文本控件对事件的响应;理解函数和方法的使用。

三、操作环境Windows2007下jdk四、详细设计过程1、界面设计界面设计中有用到swing组件的TextField和Button,用awt中的BorderLayout和GridLayout布局管理方式,窗体名称Calculator 继承JFrameActionListener接口,并实现public void actionPerformed(ActionEvent e){}方法。

定义菜单、菜单条、菜单项、按钮、文本框、容器,设置为private类型。

定义变量double memoryd;//使用内存中存储的数字;DecimalFormat df;//保留小数位数。

使用private JButton getJButton()方法添加按钮并给按钮命名,方法设置按钮的字体和字体颜色。

设置数字按钮1到9并添加监控,使其在发生鼠标事件时改变按钮颜色public CalculatorPanel() {setLayout(new BorderLayout());result = 0;lastCommand = "=";start = true;display = new JButton("0");display.setEnabled(false);add(display, BorderLayout.NORTH);ActionListener insert = new InsertAction(); ActionListener command = new CommandAction();panel = new JPanel();panel.setLayout(new GridLayout(4, 4));addButton("7", insert);addButton("8", insert);addButton("9", insert);addButton("/", command);addButton("4", insert);addButton("5", insert);addButton("6", insert);addButton("*", command);addButton("1", insert);addButton("2", insert);addButton("3", insert);addButton("-", command);addButton("0", insert);addButton(".", insert);addButton("=", command);addButton("+", command);add(panel, BorderLayout.CENTER);} 其图形界面如下:流程图:2、等于号按钮,jButton.setText("=");通过使用switch……case 语句来控制, Operator变量在定义+、-、*、/按钮时对其赋值3、设置计算器名称:(Calculator)class CalculatorFrame extends JFrame {public CalculatorFrame() {setTitle("Calculator");CalculatorPanel panel = new CalculatorPanel();add(panel);pack();4、算法的实现:private class CommandAction implements ActionListener {public void actionPerformed(ActionEvent event) {String command = event.getActionCommand();if(start) {if(command.equals("-")) {display.setText(command);start = false;} else {lastCommand = command;}} else {calculate(Double.parseDouble(display.getText()));lastCommand = command;start = true;}}}public void calculate(double x) {if(lastCommand.equals("+")) result += x;else if(lastCommand.equals("-")) result -= x;else if(lastCommand.equals("/")) result /= x;else if(lastCommand.equals("*")) result *= x;else if(lastCommand.equals("=")) result = x;display.setText("" + result);}setBounds()方法实现窗体的显示位置和窗体大小,setVisible()将其设置为五、程序的调试与运行结果说明①加法:231.6+377= 减法:7678-14288②乘法:122.6*144 除法:347/142③特殊算法:3/0 此计算器漏洞,不能处理特殊算法。

六、设计中用到的课程知识点Java语言程序设计:1.布局管理器:borderLayout、gridLayout、setLayout;2.组件:JFrame、JPanel、JButton、JTextField、JMenuBar、JMenu、JMenuItem3.图形用户界面;4.类的继承、接口的继承;5.监听器的使用;6.Math方法的使用;7.强制类型转换;七、设计中遇到的问题及解决方法因为第一次设计简单的JAVA程序,有很多地方没有想到,这次设计计算器,也有很多没有完善的地方,比如:计算器除数不能为0,但我们这次设计的计算器没考虑到这个方面,使得计算器在这种情况下不能正常计算,后经过查阅参考书,解决了这个问题,只需一行代码即可:if(d3==0) tf.setText("除数不能为零")。

相关内容简单的计算器,实现如下功能:(1)用户在窗口(WindowOperation类负责创建)中的两个文本框中输入参与运算的两个操作数。

(2)用户在下拉列选择运算符触发ItemEvent事件,ItemEvent事件的监视器operator(OperatorListener类负责创建)获得运算符,并将运算符传递给ActionEvent事件的监视器computer(3)用户单击按钮触发ActionEvent事件,监视器computer (ComputerrListener类负责创建)给出运算结果。

八、主要收获这次的程序设计,从一个简单的计算器就可以看出JAVA的程序设计不是那么简单,仅仅是一个小小的计算器,就已经有很多需要注意的问题,一不小心就会出错,还会有很多地方没怎么明白,而计算器的设计是最简单的几个设计其中之一,可见,平时的知识积累是很重要的。

没有知识的积累,再简单的东西也不可能设计出来。

课程设计还让我们练习了动手能力,使我们平时学习的知识得以在实际中应用,不会学死书,活学活用,很大程度上提高了我们的能力,对以后的学习、工作、生活也会有一定的帮助。

相关主题