java简单计算器源代码

上传人:hao****021 文档编号:167260607 上传时间:2022-11-02 格式:DOC 页数:6 大小:40.50KB
收藏 版权申诉 举报 下载
java简单计算器源代码_第1页
第1页 / 共6页
java简单计算器源代码_第2页
第2页 / 共6页
java简单计算器源代码_第3页
第3页 / 共6页
资源描述:

《java简单计算器源代码》由会员分享,可在线阅读,更多相关《java简单计算器源代码(6页珍藏版)》请在装配图网上搜索。

1、 简单计算器代码package calcultorthree;import java.awt.BorderLayout;/导入边界布局管理器类import java.awt.GridLayout;/导入网格布局管理器类import java.awt.TextField;/导入文本区域类import java.awt.event.ActionEvent;/导入事件类import java.awt.event.ActionListener;/导入事件监听者类import javax.swing.JButton;/导入按钮类import javax.swing.JFrame;/导入窗体import

2、javax.swing.JPanel;/导入面板/* *本例实现了简单计算器代码,具备加减乘除和正弦功能,旨在抱砖引玉。熟悉java的同学,可以在此基础上实现更复杂的功能。 * author Fjsh */public class CalcultorThree /新建对象,在构造函数中进行初始化 JFrame frame;/新建窗体对象 JButton buttonzero,buttondot,buttonequal;/新建按钮“0”“.”“=” JButton buttonplus,buttonminus,buttonmultiple,buttondevision, buttonsin,bu

3、ttontozero;/新建按钮“+”“-”“*”“/”“sin”和归零按钮 JButton buttonone,buttontwo,buttonthree,buttonfour,buttonfive,buttonsix, buttonseven,buttoneight,buttonnine;/新建数字按钮“0”“1”“2”“3”“4”“5”“6”“7”“8”“9” JPanel panelwest,panelcenter,paneleast;/新建三个面板 TextField tf;/新建文本区域对象 public CalcultorThree() /初始化对象 tf=new TextFie

4、ld(30);/构造空文本字段,字符宽度为30 frame =new JFrame(CalculatorThree);/构造窗体对象,名称为“CalculatorThree” panelcenter=new JPanel();/构造面板,放到窗体中央 panelwest=new JPanel();/构造面板,放到窗体西边 paneleast=new JPanel();/构造面板,放到窗体东边 Handle h=new Handle();/新建Handle类对象,Handle类为事件监听类 /创建数字按钮对象,1、2、3、4、5、6、7、8、9 buttonone=new JButton(1);

5、 buttontwo=new JButton(2); buttonthree=new JButton(3); buttonfour=new JButton(4); buttonfive=new JButton(5); buttonsix=new JButton(6); buttonseven=new JButton(7); buttoneight=new JButton(8); buttonnine=new JButton(9); panelcenter.setLayout(new GridLayout(3,3);/设置面板布局为网格布局,3行3列 /将数字按钮添加到中间面板 panelcen

6、ter.add(buttonone); panelcenter.add(buttontwo); panelcenter.add(buttonthree); panelcenter.add(buttonfour); panelcenter.add(buttonfive); panelcenter.add(buttonsix); panelcenter.add(buttonseven); panelcenter.add(buttoneight); panelcenter.add(buttonnine); /为10个按钮注册事件监听器 buttonone.addActionListener(h);

7、buttontwo.addActionListener(h); buttonthree.addActionListener(h); buttonfour.addActionListener(h); buttonfive.addActionListener(h); buttonsix.addActionListener(h); buttonseven.addActionListener(h); buttoneight.addActionListener(h); buttonnine.addActionListener(h); /构造按钮“0”“.”“=”,注册事件监听器,设置1行3列的布局,添加

8、到到西边的面板 buttonzero=new JButton(0); buttondot=new JButton(.); buttonequal=new JButton(=); buttonzero.addActionListener(h); buttondot.addActionListener(h); buttonequal.addActionListener(h); panelwest.setLayout(new GridLayout(3,1); panelwest.add(buttonzero); panelwest.add(buttondot); panelwest.add(butt

9、onequal); /构造操作按钮“+”“-”“*”“/”“sin”“0”,其中“0”为归零按钮 buttonplus=new JButton(+); buttonminus=new JButton(-); buttonmultiple=new JButton(*); buttondevision=new JButton(/); buttonsin=new JButton(sin); buttontozero=new JButton(0); paneleast.setLayout(new GridLayout(3,1);/设置西边的布局为3行1列 /将操作按钮“+”“-”“*”“/”“sin”

10、“0”添加到西边的面板中 paneleast.add(buttonplus); paneleast.add(buttonminus); paneleast.add(buttonmultiple); paneleast.add(buttondevision); paneleast.add(buttonsin); paneleast.add(buttontozero); /为操作按钮“+”“-”“*”“/”“sin”“0”注册监听器 buttonplus.addActionListener(h); buttonminus.addActionListener(h); buttonmultiple.a

11、ddActionListener(h); buttondevision.addActionListener(h); buttonsin.addActionListener(h); buttontozero.addActionListener(h); frame.setLayout(new BorderLayout();/设置窗体为边界布局 frame.add(paneleast,East);/将东边面板paneleast添加到窗体的东边 frame.add(tf,BorderLayout.NORTH); /将tf文本区域添加到窗体的北边,即顶部 frame.add(panelwest,Bord

12、erLayout.WEST);/将panelwest面板添加到窗体西边 frame.add(panelcenter,BorderLayout.CENTER);/将panelcenter面板添加到窗体中间 frame.pack();/设置窗体大小,适合其子组件的首选大小和布局 frame.setLocation(500,500);/设置窗体显示位置为(500,500) frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/设置布局窗体默认关闭方式 frame.setVisible(true);/设置窗体可见 public static voi

13、d main(String args) new CalcultorThree();/主方法中新建对象 class Handle implements ActionListener/实现动作监听器类 int biaozhi=0;/此标志标志加减乘除操作 double flag1=0,flag2=0,flag3=0;/flag1、flag2为两个操作数,flag3为结果 Override public void actionPerformed(ActionEvent e) /方法重写 try/此处可能会产生异常,用try、catch捕捉异常,不用处理 if(e.getSource()=button

14、dot)/小数点 tf.setText(0.); if(e.getSource()=buttontozero)/归零操作 tf.setText(); if(e.getSource()=buttonzero)/按键0操作 tf.setText(tf.getText()+0); flag1=Double.parseDouble(tf.getText();/将文本区域转换成Double类型,赋给flag1 if(e.getSource()=buttonone)/按键1操作 tf.setText(tf.getText()+1); flag1=Double.parseDouble(tf.getText(

15、); else if(e.getSource()=buttontwo)/按键2操作 tf.setText(tf.getText()+2); flag1=Double.parseDouble(tf.getText(); else if(e.getSource()=buttonthree)/按键3操作 tf.setText(tf.getText()+3); flag1=Double.parseDouble(tf.getText(); else if(e.getSource()=buttonfour)/按键4操作 tf.setText(tf.getText()+4); flag1=Double.pa

16、rseDouble(tf.getText(); else if(e.getSource()=buttonfive)/按键5操作 tf.setText(tf.getText()+5); flag1=Double.parseDouble(tf.getText(); else if(e.getSource()=buttonsix)/按键6操作 tf.setText(tf.getText()+6); flag1=Double.parseDouble(tf.getText(); else if(e.getSource()=buttonseven)/按键7操作 tf.setText(tf.getText(

17、)+7); flag1=Double.parseDouble(tf.getText(); else if(e.getSource()=buttoneight)/按键8操作 tf.setText(tf.getText()+8); flag1=Double.parseDouble(tf.getText(); else if(e.getSource()=buttonnine)/按键9操作 tf.setText(tf.getText()+9); flag1=Double.parseDouble(tf.getText(); if(e.getSource()=buttonplus)/加法操作 tf.set

18、Text(); flag2=flag1; biaozhi=0; if(e.getSource()=buttonminus)/减法操作 tf.setText(); flag2=flag1; biaozhi=1; if(e.getSource()=buttonmultiple)/乘法操作 tf.setText(); flag2=flag1; biaozhi=2; if(e.getSource()=buttondevision)/除法操作 tf.setText(); flag2=flag1; biaozhi=3; if(e.getSource()=buttonsin)/正弦操作 flag3=Math.sin(flag1); tf.setText(flag3+); if(e.getSource()=buttonequal)/等号操作,利用biaozhi判断进行相应加减乘除操作 if(biaozhi=0) flag3=flag1+flag2; if(biaozhi=1) flag3=flag1-flag2; if(biaozhi=2) flag3=flag1*flag2; if(biaozhi=3) flag3=flag1/flag2; tf.setText(flag3+); catch(Exception ex)

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!