java计算器实验总结.docx

上传人:b****6 文档编号:13362886 上传时间:2023-06-13 格式:DOCX 页数:11 大小:18.70KB
下载 相关 举报
java计算器实验总结.docx_第1页
第1页 / 共11页
java计算器实验总结.docx_第2页
第2页 / 共11页
java计算器实验总结.docx_第3页
第3页 / 共11页
java计算器实验总结.docx_第4页
第4页 / 共11页
java计算器实验总结.docx_第5页
第5页 / 共11页
java计算器实验总结.docx_第6页
第6页 / 共11页
java计算器实验总结.docx_第7页
第7页 / 共11页
java计算器实验总结.docx_第8页
第8页 / 共11页
java计算器实验总结.docx_第9页
第9页 / 共11页
java计算器实验总结.docx_第10页
第10页 / 共11页
java计算器实验总结.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

java计算器实验总结.docx

《java计算器实验总结.docx》由会员分享,可在线阅读,更多相关《java计算器实验总结.docx(11页珍藏版)》请在冰点文库上搜索。

java计算器实验总结.docx

java计算器实验总结

java计算器实验总结

java计算器实验总结,做完实验你会有所发现,怎么写总结呢?

下面是带来的java计算器实验总结,欢迎阅读!

java计算器实验总结

GDOU-B-11-112

广东海洋大学学生实验报告书(学生用表)

实验名称JAVA计算器程序设计

学院(系)

学生姓名

课程名称专业JAVA程序设计班级课程号完成日期学号实验地点

实验JAVA计算器程序设计

1)实验总结:

刚做之前,勉强还能做些小程序,但在进行了计算器程序设计的时候,才发现很多语句还不能联系运用,大部分还是通过XX和书籍才勉勉强强完成,看来实践才是硬道理

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的方法publicvoidactionPerformed(ActionEvente)。

(8)为各个组件编写事件代码,完成每个按钮的不同功能。

4、程序

importjava.awt.*;

importjava.awt.event.*;

importjavax.swing.*;

importjavax.swing.event.*;

importjava.awt.List;

importjavax.script.ScriptEngine;

importjavax.script.ScriptEngineManager;

importjavax.script.ScriptException;

publicclassCalculatorextendsFrame

{

publicstaticvoidmain(Stringargs){finalFramewindow=newFrame(“Calculator”);window.setSize(380,337);intwidth=Toolkit.getDefaultToolkit().getScreenSize().width;window.setResizable(false);intheight=Toolkit.getDefaultToolkit().getScreenSize().height;window.setLocation(width/2-200,height/2-150);window.setLayout(null);/

finalJTextFieldtext=newJTextField();//text.setEditable(false);text.setEditable(true);text.setBounds(10,40,360,50);window.add(text);text.setForeground(Color.blue);text.setBackground(Color.LIGHT_GRAY);text.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEventarg0){ScriptEngineManagersem1=newScriptEngineManager();ScriptEnginese1=sem1.getEngineByName(“js”);try{intleng10=text.getText().length();if(leng10==0){JOptionPane.showMessageDialog(null,“对不起,您没有任何

text.requestFocusInWindow();text.setHorizontalAlignment(JTextField.RIGHT);输入,请重新输入:

”);

}

else{}Stringreslut=text.setText(text.getText()+”=“+reslut);text.requestFocus();se1.eval(text.getText()).toString();}catch(ScriptExceptionevt){JOptionPane.showMessageDialog(null,”表达式错误,请重新输入!

text.setText(““);//给文本框赋值为

text.requestFocus();

}“);空达到清屏作用

}});/***********设置0键***************/finalJButtonb0=newJButton(“0”);//新建按钮0b0.setBounds(10,283,72,50);//设置0键的位置window.add(b0);//把文本框添加到窗口中b0.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)text.setText(text.getText()+”0”);text.requestFocus();{}});/********设置1键****************/finalJButtonb1=newJButton(“1”);window.add(b1);b1.setBounds(10,233,72,50);b1.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)text.setText(text.getText()+”1”);text.requestFocus();

}{

});/***********设置2键*****************/finalJButtonb2=newJButton(“2”);

b2.setBounds(82,233,72,50);window.add(b2);b2.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)text.setText(text.getText()+”2”);text.requestFocus();

}{

});/********设置3键****************/finalJButtonb3=newJButton(“3”);b3.setBounds(154,233,72,50);window.add(b3);b3.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)

}text.setText(text.getText()+”3”);text.requestFocus();{

});

/*********设置4键***************/finalJButtonb4=newJButton(“4”);b4.setBounds(10,183,72,50);window.add(b4);b4.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)

}text.setText(text.getText()+”4”);text.requestFocus();{

});/*********设置5键*************/finalJButtonb5=newJButton(“5”);b5.setBounds(82,183,72,50);window.add(b5);b5.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)text.setText(text.getText()+”5”);text.requestFocus();{}

});/********设置6键***************/finalJButtonb6=newJButton(“6”);b6.setBounds(154,183,72,50);window.add(b6);b6.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)text.setText(text.getText()+”6”);text.requestFocus();{}});/*********设置7键**************/finalJButtonb7=newJButton(“7”);b7.setBounds(10,135,72,50);window.add(b7);b7.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)text.setText(text.getText()+”7”);text.requestFocus();{}});/**********设置8键***************/finalJButtonb8=newJButton(“8”);b8.setBounds(82,135,72,50);window.add(b8);b8.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)text.setText(text.getText()+”8”);text.requestFocus();{}});/***********设置9键**************/finalJButtonb9=newJButton(“9”);b9.setBounds(154,135,72,50);window.add(b9);b9.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){

}text.setText(text.getText()+”9”);text.requestFocus();});/***********设置加法键**************/finalJButtonAdd=newJButton(“+”);Add.setBounds(154,283,72,50);window.add(Add);Add.addActionListener(newActionListener(){{

text.setText(text.getText()+”+”);

text.requestFocus();publicvoidactionPerformed(ActionEvente)

}});/***********设置减法键**************/finalJButtonSub=newJButton(“-”);Sub.setBounds(298,183,80,50);//设置减法键的位置window.add(Sub);//把减号键添加到窗口中Sub.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)

text.setText(text.getText()+”-”);text.requestFocus();{

}});/***********设置乘法键**************/finalJButtonMulti=newJButton(“*”);Multi.setBounds(226,183,72,50);window.add(Multi);Multi.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)

intleng3=text.getText().length();if(leng3>=1)

{

}

else{

JOptionPane.showMessageDialog(null,”您输入的第一个字符为乘号,不text.setText(text.getText()+”*”);text.requestFocus();{

符合要求请重新输入:

”);

}});}text.requestFocus();/***********设置除法键**************/finalJButtonDiv=newJButton(“/”);Div.setBounds(226,135,72,50);window.add(Div);Div.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)

intleng4=text.getText().length();

if(leng4>=1)

{

}

else{

JOptionPane.showMessageDialog(null,”您输入的第一个字符为除号,不text.setText(text.getText()+”/”);text.requestFocus();{

符合要求请重新输入:

”);

text.requestFocus();

}});/***********设置等号键**************/finalJButtonequal=newJButton(“=“);equal.setBounds(226,283,153,50);window.add(equal);equal.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)ScriptEngineManagersem=newScriptEngineManager();ScriptEnginese=sem.getEngineByName(“js”);try{intleng5=text.getText().length();if(leng5==0){JOptionPane.showMessageDialog(null,“对不起,您没有任何

text.requestFocus();{}输入,请重新输入:

”);

}else{Stringreslut=

se.eval(text.getText()).toString();

}

}text.setText(text.getText()+”=“+reslut);text.requestFocus();}catch(ScriptExceptionevt){JOptionPane.showMessageDialog(null,”表达式错误,请重新输入!

text.setText(““);text.requestFocus();}“);

});/***********设置小数点键**************/finalJButtonpoint=newJButton(“.”);point.setBounds(82,283,72,50);window.add(point);point.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)

intleng6=text.getText().length();

if(leng6>0)

{

}

else{

JOptionPane.showMessageDialog(null,”您输入的第一个字符为小数点,text.setText(text.getText()+”.”);text.requestFocus();{

不符合要求请重新输入:

”);

text.requestFocus();

}});/***********设置左括号键**************/finalJButtonleft=newJButton(“(“);left.setBounds(226,233,72,50);//设置左括号键的位置window.add(left);//把左括号键添加到窗口中left.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)text.setText(text.getText()+”(“);text.requestFocus();{}}});

/***********设置右括号键**************/finalJButtonright=newJButton(“)”);right.setBounds(298,233,80,50);//设置右括号键的位置window.add(right);//把右括号键添加到窗口中right.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)

intleng7=text.getText().length();

if(leng7>0)

{

}

else

{

JOptionPane.showMessageDialog(null,”您输入的第一个字符为右括号,text.setText(text.getText()+”)”);text.requestFocus();{

不符合要求请重新输入:

”);

text.requestFocus();

}});/***********设置清屏键**************/finalJButtonce=newJButton(“CE”);ce.setBounds(190,90,186,45);window.add(ce);ce.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)

intleng8=text.getText().length();

if(leng8>0)

{

}

else

{

}JOptionPane.showMessageDialog(null,”当前以经为空,无需清屏!

”);text.requestFocus();text.setText(““);text.requestFocus();{}

}});/***********设置退格键**************/finalJButtonback=newJButton(“Backspace”);

back.setBounds(10,90,180,45);window.add(back);back.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)Stringmessage;intleng=text.getText().length();message=text.getText();if(leng==0){

}

else

{

text.setText(message.substring(0,leng-1));text.requestFocus();JOptionPane.showMessageDialog(null,“对不起,您没有任何输入无法text.requestFocus();{退格:

”);

}}});finalJButtonAir=newJButton(“%”);Air.setBounds(298,135,80,50);window.add(Air);Air.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){intleng9=text.getText().length();{if(leng9>0){}else{JOptionPane.showMessageDialog(null,”您输入的第一个字符为求text.setText(text.getText()+”%”);text.requestFocus();余数,不符合要求请重新输入:

”);

text.requestFocus(

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工程科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2