好文档 - 专业文书写作范文服务资料分享网站

用JAVA编写计算器程序

天下 分享 时间: 加入收藏 我要投稿 点赞

用JAVA编写计算器程序(模拟Windows计算器)

import java.awt.*; import ;

public class Calculation extends WindowAdapter implements ActionListener {

double dResult=0; double dNowInput=0; double dMemory;

int n=0; //记载小数位数

int nOperation=1; // 记录运算符类型 int nBitsNum=0; //记录总共输入的位数

boolean alreadyHaveDot=false; //已经有小数点? boolean keyAvailable=true;

boolean alreadyClickedEqueal=false; //是否按下过\

boolean isTempNowInput=false; //是否在计算出结果后直接按运算符将结果赋给了当前输入值?

Frame f;

Panel p1,p2,p3,p4,p5,p6; TextField tf1,tf2;

Button b1,b2,b3,b4,b5,b6,b7,b8,b9,b0;

Button bDiv,bSqrt,bMulti,bMinus,bPercent,bPlus,bReciprocal,bEqual,bDot,bNegative;

Button bBackspace,bCE,bC,bMR,bMS,bMC,bM;

public void display()

如有你有帮助,请购买下载,谢谢!

{

f=new Frame(\计算器\ f.setSize(280,213); f.setLocation(200,200);

f.setBackground(Color.LIGHT_GRAY); f.setResizable(false);

f.setLayout(new BorderLayout(3,3));

p1=new Panel(new GridLayout(1,3,5,5)); //用于存放backspace,ce,c三键 p2=new Panel(new GridLayout(4,5,5,5)); //用于存放数字区及附近共20键, 此处间隙设置可能不合理,以后调整

p3=new Panel(new GridLayout(5,1,5,5)); //用于存放MC,MR,MS,M+键及显示M状态文本框,此处间隙设置可能不合理,以后调整 p4=new Panel(new FlowLayout()); //用于存放p1,p2 p5=new Panel(new FlowLayout()); p6=new Panel(new FlowLayout()); p4.add(p1); p4.add(p2);

tf1=new TextField(35); //存放显示区 tf1.setText(\

tf1.setEditable(false); p5.add(tf1);

f.add(p5,BorderLayout.NORTH); f.add(p4,BorderLayout.CENTER); f.add(p3,BorderLayout.WEST);

b1=new Button(\ b2=new Button(\页

1 b3=new Button(\ b4=new Button(\ b5=new Button(\ b6=new Button(\ b7=new Button(\ b8=new Button(\ b9=new Button(\ b0=new Button(\

b1.addActionListener(this); b2.addActionListener(this); b3.addActionListener(this); b4.addActionListener(this); b5.addActionListener(this); b6.addActionListener(this); b7.addActionListener(this); b8.addActionListener(this); b9.addActionListener(this); b0.addActionListener(this);

bDiv=new Button(\ bSqrt=new Button(\ bMulti=new Button(\ bMinus=new Button(\ bPercent=new Button(\ bPlus=new Button(\

bReciprocal=new Button(\ bEqual=new Button(\ bDot=new Button(\

bNegative=new Button(\

如有你有帮助,请购买下载,谢谢!

bDiv.addActionListener(this); bSqrt.addActionListener(this); bMulti.addActionListener(this); bMinus.addActionListener(this); bPercent.addActionListener(this); bPlus.addActionListener(this);

bReciprocal.addActionListener(this); bEqual.addActionListener(this); bDot.addActionListener(this);

bNegative.addActionListener(this);

p2.add(b7); p2.add(b8); p2.add(b9); p2.add(bDiv); p2.add(bSqrt); p2.add(b4); p2.add(b5); p2.add(b6); p2.add(bMulti); p2.add(bPercent); p2.add(b1); p2.add(b2); p2.add(b3);

p2.add(bMinus);

p2.add(bReciprocal); p2.add(b0);

p2.add(bNegative); p2.add(bDot); 2页

p2.add(bPlus); p2.add(bEqual);

bBackspace=new Button(\ bCE=new Button(\ bC=new Button(\

bBackspace.addActionListener(this); bCE.addActionListener(this); bC.addActionListener(this);

p1.add(bBackspace); p1.add(bCE); p1.add(bC);

tf2=new TextField(2); tf2.setEnabled(false);

tf2.setBackground(Color.LIGHT_GRAY); bMC=new Button(\ bMR=new Button(\ bMS=new Button(\ bM=new Button(\

bMC.addActionListener(this); bMR.addActionListener(this); bMS.addActionListener(this); bM.addActionListener(this);

p6.add(tf2); p3.add(p6);

如有你有帮助,请购买下载,谢谢!

p3.add(bMC); p3.add(bMR); p3.add(bMS); p3.add(bM);

f.setVisible(true);

f.addWindowListener(this); }

public void actionPerformed(ActionEvent e) {

//key 0 to 9

if(this.keyAvailable && e.getActionCommand().length()==1 && e.getActionCommand().compareTo(\&& e.getActionCommand().compareTo(\ {

if(this.isTempNowInput) {

this.dNowInput=0;

this.isTempNowInput=false; }

this.nBitsNum++;

if(this.alreadyHaveDot==false)

this.dNowInput=this.dNowInput*10+Double.parseDouble(e.getActionCommand()); else {

double temp=Double.parseDouble(e.getActionCommand()); for(int i=this.n;i<0;i++) {

temp*=0.1; 3页

用JAVA编写计算器程序

用JAVA编写计算器程序(模拟Windows计算器)importjava.awt.*;import;publicclassCalculationextendsWindowAdapterimplementsActionListener{doubledResult=0;doubledNowInput=0;doubl
推荐度:
点击下载文档文档为doc格式
36exl14r9k4m0xd0pw4b4c2db011w500m9z
领取福利

微信扫码领取福利

微信扫码分享