- 1、本文档共23页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
GDOU-B-11-112 广 东 海 洋 大 学 学 生 实 验 报 告 书 ( 学 生 用 表 )
实验名称 JAVA 计算器程序设计 课程名称 JAVA 程序设计 课程号
学院(系) 专业 班级
学生姓名 学号 实验地点 完成日期
实验 JAVA 计算器程序设计
1) 实验总结: 刚做之前, 勉强还能做些小程序, 但在进行了计算器程序设计的时候, 才发现很多语句还不能联系运用,大部分还是通过百度和书籍才勉勉强强完成,看来 实践才是硬道理
2) 实验目的
通过计算器程序设计,能够更加深入的了解 JAVA,熟悉图形用户的设计原理和程序结构等 4) 实验内容和步骤
实验内容
应用 JAVA 软件设计一个简易的计算器,实现基本的四则运算及括号
设计流程
1. 分析该计算器需要完成的功能。
用户能够完成添加括号和负号的四则混合运算 ,并且计算器能够自动识别运算符的优先级, 根据用户输入的运算表达式, 自动计算出相应的结果。 同时还完成了计算器中 C 按钮清屏功能和 Backspace 退格键。
2. 考虑异常处理。
(1)当输入的表达式中出现除零的操作,显示框将显示“ Infinity(无穷大)”。
(2)当输入的表达式错误时,将弹出提示框显示“表达式错误请重新输入”
(3)当计算器的显示文本框里为没有输入内容时直接点击等号按钮,将弹出提示框显示“对
不起,您没有任何输入,请重新输入: ”。
(4)当第一次输入乘号键,除号键, 右括号,小数点,求余键,等号键,ce 键,Backspace 键时提示错误。
4. 考虑数据的处理
目标计算表达式通过点击计算器界面上的按钮进行输入, 当按下等号之后, 计算器通过调用 JAVA 中 script 这个包中的相关类和方法来实现数据的处理。
5. 编码实现计算器的功能。
(1)新建相关的文件。
(2)引入 JAVA 中相关的包。
(3)新建类 Jsq,并继承了类 Frame,而且实现了接口 ActionListener
(4)定义相关的变量,创建相关组件,并对组件的属性进行设置。
(5)对所创建的组件进行布局,完成界面的实现。
(6)为各个组件添加事件监听器。
(7)重写事件接口 ActionListener 的方法 public void actionPerformed(ActionEvent e)。
(8)为各个组件编写事件代码,完成每个按钮的不同功能。
4、 程序
import java .awt .*;
import java .awt .event .*;
import javax .swing .*;
import javax .swing .event .*;
import java .awt .List;
import javax .script .ScriptEngine;
import javax .script .ScriptEngineManager;
import javax .script .ScriptException;
public class Calculator extends Frame
{
public static void main(String[] args)
{
final Frame window = new Frame( Calculator );
window .setSize(380, 337);
window .setResizable(false);
int width = Toolkit . getDefaultToolkit () .getScreenSize() .width ;
int height = Toolkit . getDefaultToolkit () .getScreenSize() .height ;
window .setLocation(width / 2 - 200, height / 2 - 150);
window .setLayout(null); /
final JTextField text = new JTextField();
text .setHorizontalAlignment(JTextField . RIG
文档评论(0)