您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > Java实现简易计算器
v........资料..Java实训作业题目:Java实现简易计算器学院:姓名:学号:班级:20年月v........资料..一、实验目的通过课程设计,主要要达到两个目的,一是检验和巩固专业知识、二是提高综合素质和能力。此次课程设计实训主要是Java语言程序设计的实现。通过该课程设计,可以将课堂上掌握的理论知识与处理数据的业务相结合,以检验自己掌握知识的宽度、深度及对知识的综合运用能力。二、实验要求用Java编写一个简单的计算器,使其能够实现最基本的功能,如简单的加、减、乘、除;平方根,倒数,平方等功能。三、详细内容1.界面设计界面设计使用GUI,其中有用到swing组件的TextField和Button,用到awt中的BorderLayout和GridLayout布局管理方式,其图形界面如图1-1所示:v........资料..图1-1其中主要代码为:publicmainWindow(){this.setTitle(计算器);//用户图形界面标题this.setVisible(true);//用户图形界面可缩小this.setResizable(false);//用户图形界面不可放大this.setSize(350,300);//设置用户图形界面的大小this.setLocation(400,150);//用户图形界面在屏幕中的显示位置JPanelpanel1=newJPanel();//新建一个画板JPanelpanel2=newJPanel();button1=newJButton(1);...reset=newJButton(CE);Containercontainer=this.getContentPane();container.add(panel2,BorderLayout.NORTH);container.add(panel1);panel1.setLayout(newGridLayout(5,4));//将画板1分为4行5列result.setEnabled(false);result.setFont(newFont(Dialog,Font.BOLD,25));//运算结果的字体大小result.setEditable(false);result.setHorizontalAlignment(SwingConstants.RIGHT);panel1.add(reciprocal);//分别将20个按钮依次添加到画板panel1中,并设置各自的大小reciprocal.setFont(newFont(Dialog,Font.PLAIN,20));...panel1.add(divide);v........资料..divide.setFont(newFont(Dialog,Font.PLAIN,20));panel2.setLayout(newGridLayout());panel2.add(result);//画板panel2添加运算结果2.四则运算较为简单的实现了简单的加、减、乘、除运算,主要代码如下:ActionListenerequal1=newActionListener(){//实现四则运算publicvoidactionPerformed(ActionEvente){Stringstr=result.getText();b=DatatypeConverter.parseDouble(str);{if(flag==+)c=a+b;elseif(flag==-)c=a-b;elseif(flag==*)c=a*b;elseif(flag==/||b!=0)c=a/b;}if(flag!==)result.setText(+c);elseresult.setText(零不能做除数!);a=0;b=0;c=0;flag=;}v........资料..};3.其他功能另外添加了平方根,倒数,平方等功能,主要代码如下:平方根运算的实现:ActionListenersqrt1=newActionListener(){publicvoidactionPerformed(ActionEvente){Stringstr=result.getText();doublei=DatatypeConverter.parseDouble(str);i=Math.sqrt(i);result.setText(+i);}};倒数运算的实现:ActionListenerreciprocal1=newActionListener(){publicvoidactionPerformed(ActionEvente){Stringstr=result.getText();doublei=DatatypeConverter.parseDouble(str);i=1/i;result.setText(+i);}};平方运算的实现:ActionListenersquare1=newActionListener(){publicvoidactionPerformed(ActionEvente){Stringstr=result.getText();doublei=DatatypeConverter.parseDouble(str);i=i*i;v........资料..result.setText(+i);}};4.程序测试经测试发现本计算器基本功能均能实现,可正常运行计算,针对功能实现的代码部分过于简单,可以对其进行改善提高,方便用户使用!5.实训小结通过对计算器窗体的编写,熟悉了java图形用户界面的设计原理和程序结构,熟悉了java中awt和swing的组合。学会将书本上的知识运用在实际中,提升了编程能力。四、源代码importjava.awt.BorderLayout;importjava.awt.Color;importjava.awt.Container;importjava.awt.Font;importjava.awt.GridLayout;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JPanel;importjavax.swing.JTextField;importjavax.swing.SwingConstants;importjavax.xml.bind.DatatypeConverter;publicclassCalculator{publicstaticvoidmain(String[]args){newmainWindow();//新建主类调用}}classmainWindowextendsJFrame{JTextFieldresult=newJTextField(0);//结果栏用于存储运算结果v........资料..JButtonbutton0;//按钮0JButtonbutton1;//按钮1JButtonbutton2;//按钮2JButtonbutton3;//按钮3JButtonbutton4;//按钮4JButtonbutton5;//按钮5JButtonbutton6;//按钮6JButtonbutton7;//按钮7JButtonbutton8;//按钮8JButtonbutton9;//按钮9JButtonreciprocal;//倒数按钮JButtonsquare;//平方按钮JButtonsqrt;//平方根按钮JButtonreset;//清零按钮JButtonadd;//加法按钮JButtonreduce;//减法按钮JButtonmultiply;//乘法按钮JButtondivide;//除法按钮JButtonequal;//等号按钮JButtonpoint;//小数点按钮doublea,b,c;Stringflag;publicmainWindow(){this.setTitle(计算器);//用户图形界面标题this.setVisible(true);//用户图形界面可缩小this.setResizable(false);//用户图形界面不可放大this.setSize(350,300);//设置用户图形界面的大小this.setLocation(400,150);//用户图形界面在屏幕中的显示位置JPanelpanel1=newJPanel();//新建一个画板JPanelpanel2=newJPanel();button1=newJButton(1);button2=newJButton(2);button3=newJButton(3);button4=newJButton(4);button5=newJButton(5);button6=newJButton(6);button7=newJButton(7);button8=newJButton(8);button9=newJButton(9);button0=newJButton(0);reciprocal=newJButton(1/X);v........资料..square=newJButton(X^2);sqrt=newJButton(√ ̄);add=newJButton(+);reduce=newJButton(-);multiply=newJButton(*);divide=newJButton(/);equal=newJButton(=);point=newJButton(.);reset=newJButton(CE);Containercontainer=this.getContentPane();container.add(panel2,BorderLayout.NORTH);container.add(panel1);panel1.setLayout(newGridLayout(5,4));//将画板1分为4行5列result.setEnabled(false);result.setFont(newFont(Dialog,Font.BOLD,25));//运算结果的字体大小result.setEditable(false);result.setHorizontalAlignment(SwingConstants.RIGHT);panel1.add(reciprocal);//分别将20个按钮依次添加到画板panel1中,并设置各自的大小reciprocal.setFont(newFont(Dialog,Font.PLAIN,20));panel1.add(square);square.setFont(newFont(Dialog,Font.PLAIN,20));panel1.add(sqrt);sqrt.setFont(newFont(Dialog,Font.PLAIN,20));panel1.add(reset);reset.setFont(newFont(Dialog,Font.PLAIN,20));panel1.add(button7);button1.setFont(newFont(Dialog,Font.PLAIN,20));panel1.add(button8);button2.setFont(newFont(Dialog,Font.PLAIN,20));panel1.add(button9);button3.setFont(newFont(Dialog,Font.PLAIN,20));panel1.add(add);add.setFont(newFont(Dialog,Font.PLAIN,20));panel1.add(button4);button4.setFont(newFont(Dialog,Font.PLAIN,20));panel1.a
本文标题:Java实现简易计算器
链接地址:https://www.777doc.com/doc-7320436 .html