AVA简易计算器课程设计_课程设计简易计算器
AVA简易计算器课程设计由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“课程设计简易计算器”。
JAVA课程设计
简易计算器的设计
学号: 姓名: 班级: 指导教师:完成日期:第1页(共11页)
2016-12-
31JAVA课程设计
目 录
简易计算器课程设计.......................................................................................................................1 1.课程设计目的...........................................................................................................................1 2.课程设计任务与要求...............................................................................................................1
2.1课程设计内容....................................................................................................................1 2.2课程设计要求....................................................................................................................1 2.3课程设计环境....................................................................................................................1 3.设计方案...................................................................................................................................1
3.1程序功能............................................................................................................................1 3.2设计的具体实现................................................................................................................2
3.2.1界面设计..................................................................................................................2 3.3各模块功能的介绍和实现.................................................................................................2
3.3.1所用到的Java类库包:............................................................................................2 3.3.2按钮,归零,初始状态,面板布局......................................................................2 3.3.3添加监视器..............................................................................................................3 3.3.4 计算.........................................................................................................................4
4.程序测试...................................................................................................................................5
4.1测试内容与结果................................................................................................................5 4.2程序运行效果图................................................................................................................5 5.课程设计总结...........................................................................................................................5 附录...................................................................................................................................................7
附录A:主要源程序................................................................................................................7
(1)
第1页(共11页)
JAVA简易计算器课程设计
简易计算器课程设计
1.课程设计目的通过JAVA课程设计,使学生能将学到的面向对象的程序设计思想应用到具体的工作和学习中,加深对类与对象的理解,要求学生能够对现实生活中许多具体的事物抽象出类,并掌握类、对象、继承、方法等概念与抽象方法和多态性的概念。
2.课程设计任务与要求
2.1课程设计内容
编写一个java简易计算器程序 2.2课程设计要求
设计一个简单swing窗口的计算器,具有一般计算功能,能进行基本的加、减、乘、除运算,运行结果能正确显示,可以清除数据。并且能随时清除计算器结果进行下一次计算。
2.3课程设计环境
Win 7, eclipse,JDK开发包
3.设计方案
3.1程序功能
本次设计的简易计算器,具有一般计算功能,能进行基本的加、减、乘、除运算,运行结果能正确显示,可以清除数据。并且能随时清除计算器结果进行下一次计算。并且能随时清除计算器结果进行下一次计算。
第1页(共11页)
JAVA简易计算器课程设计
3.2设计的具体实现
3.2.1界面设计
3.3各模块功能的介绍和实现 3.3.1所用到的Java类库包: java.awt.*;
基本的图形界面组件来源于awt包。
java.awt.event.*;
事件的属性处理来源于awt.event包。
3.3.2按钮,归零,初始状态,面板布局
public void frame(){ Frame fm = new Frame(“简单计算器”);for(int i = 0;i
第2页(共11页)
JAVA简易计算器课程设计
} for(int i = 0;i
2b[16].setBackground(Color.yellow);txt = new TextField(15);txt.setEditable(false);for(int i = 0;i
public void windowClosing(WindowEvent e){ System.exit(0);//退出系统 } 3.3.3添加监视器
cla buttonlistener implements ActionListener {//编写监听器事件 通过按键得出给果
public void actionPerformed(ActionEvent e){
Button btn =(Button)e.getSource();
if(btn.getLabel()== “=”){
jisuan();
str = String.valueOf(a);
txt.setText(str);
s = “”;
} else if(btn.getLabel()== “+”){
jisuan();
txt.setText(“”);
s = “+”;
} else if(btn.getLabel()== “-”){
第3页(共11页)
JAVA简易计算器课程设计
jisuan();
txt.setText(“”);
s = “-”;
} else if(btn.getLabel()== “/”){
jisuan();
txt.setText(“”);
s = “/”;
} else if(btn.getLabel()== “*”){
jisuan();
txt.setText(“”);
s = “*”;
} else {
txt.setText(txt.getText()+ btn.getLabel());
if(btn.getLabel()== “清空”)
txt.setText(“”);
}
}
3.3.4 计算
public void jisuan(){//编写具体计算方法
if(s == “+”)
a += Double.parseDouble(txt.getText());
else if(s == “-”)
a-= Double.parseDouble(txt.getText());
else if(s == “*”)
a *= Double.parseDouble(txt.getText());
else if(s == “/”)
a /= Double.parseDouble(txt.getText());
else
a = Double.parseDouble(txt.getText());
}
第4页(共11页)
JAVA简易计算器课程设计
4.程序测试
4.1测试内容与结果
4.2程序运行效果图
1.输入“50”,“-”,“45”,“*”,“2”,“=”,在程序中操作结果 如下图:
5.课程设计总结
1.存在的不足及预期的解决方法:
不足之处:
(1):计算器的操作界面不是很美观;(2):目前只能用于+,-,*,/四则运算;
(3):连续多次进行运算会有计算错误的现象;
第5页(共11页)
JAVA简易计算器课程设计
预期解决办法:
(1):查询资料学习了解操作界面的制作方法及需要的技巧;
(2):查询相关资料了解处理字符数组赋值的相关问题(即处理字符数组
赋值只取到预定的位置);
(3):学习了解相关的库函数的功能以增加计算器的计算功能(如计算器 的次方,开方,圆周率,等运算符).2.心得体会:
这次的程序设计,从一个简单的计算器就可以看出JAVA的程序设计不是那么简单,仅仅是一个小小的计算器,就已经有很多需要注意的问题,一不小心就会出错,还会有很多地方没怎么明白,而计算器的设计是最简单的几个设计其中之一,可见,平时的知识积累是很重要的。没有知识的积累,再简单的东西也不可能设计出来。课程设计还让我们练习了动手能力,使我们平时学习的知识得以在实际中应用,不会学死书,活学活用,很大程度上提高了我们的能力,对以后的学习、工作、生活也会有一定的帮助。
通过此次的程序设计,让我了解了JAVA的更多知识,使平时的知识可以运用,更好的理解了JAVA这门课程。
参考文献
《java基础入门》
第6页(共11页)
JAVA简易计算器课程设计
附录
附录A:主要源程序
package 小程序;
import java.awt.*;import java.awt.event.*;
public cla JiSuanQi extends WindowAdapter { Panel p1 = new Panel();Panel p2 = new Panel();Panel p3 = new Panel();TextField txt;private Button[] b = new Button[17];private String [] = { “7”, “8”, “9”, “+”, “4”, “5”, “6”, “-”, “1”, “2”, “3”, “*”, “清空”, “0”, “=”, “/”, “关闭” };static double a;static String s, str;//定义变量 创建对像
public static void main(String args[]){(new JiSuanQi()).frame();}
public void frame(){ Frame fm = new Frame(“简单计算器”);for(int i = 0;i
b[16].setBackground(Color.yellow);txt = new TextField(15);txt.setEditable(false);for(int i = 0;i
第7页(共11页)
JAVA简易计算器课程设计
p1.add(txt, “North”);p2.setLayout(new GridLayout(4, 4));p3.setLayout(new BorderLayout());p3.add(b[16]);fm.add(p1, “North”);fm.add(p2, “Center”);fm.add(p3, “South”);fm.pack();fm.setVisible(true);//都是些窗中设置 添加相关组件和监听器 }
public void windowClosing(WindowEvent e){ System.exit(0);//退出系统 }
cla buttonlistener implements ActionListener {//编写监听器事件 通过按键得出给果
public void actionPerformed(ActionEvent e){ Button btn =(Button)e.getSource();if(btn.getLabel()== “=”){ jisuan();str = String.valueOf(a);txt.setText(str);s = “”;} else if(btn.getLabel()== “+”){ jisuan();txt.setText(“”);s = “+”;} else if(btn.getLabel()== “-”){ jisuan();txt.setText(“”);s = “-”;} else if(btn.getLabel()== “/”){ jisuan();txt.setText(“”);s = “/”;
} else if(btn.getLabel()== “*”){ jisuan();txt.setText(“”);s = “*”;} else { txt.setText(txt.getText()+ btn.getLabel());
第8页(共11页)
JAVA简易计算器课程设计
if(btn.getLabel()== “清空”)txt.setText(“”);} }
public void jisuan(){//编写具体计算方法
if(s == “+”)a += Double.parseDouble(txt.getText());else if(s == “-”)a-= Double.parseDouble(txt.getText());else if(s == “*”)a *= Double.parseDouble(txt.getText());else if(s == “/”)a /= Double.parseDouble(txt.getText());else
a = Double.parseDouble(txt.getText());} } }
cla close implements ActionListener {//退出
public void actionPerformed(ActionEvent e){ System.exit(0);} }
第9页(共11页)