Java编程计算器实现+-空退出

导入javax . swing . *;

导入Java . awt . *;

导入Java . awt . event . *;

公共类计算器实现ActionListener

{

String s= ",s 1;

double d1,D2;

JFrame jf = new JFrame(“小计算器by Graduate”);

JTextField TF = new JTextField();

Public void init()//实现计算器接口

{

容器c = JF . getcontentpane();

TF . sethorizontal alignment(JTextField。对);//文本框

c.add(tf,“北”);

JPanel pn3 = new JPanel(new BorderLayout());

c.add(pn3,“中心”);

JPanel pn2 = new JPanel();//功能键界面(清除键和关闭键)

pn2 . set layout(new BorderLayout());

JPanel pn 1 = new JPanel();//操作界面

pn 1 . set layout(new GridLayout(4,4));

pn3.add(pn2,“北”);

pn3 . add(pn 1);

//设置按钮

JButton b = new JButton(" CLEAR ");

B.setToolTipText("请按清除键!");//设置复位键

b.setForeground(颜色。红色);//设置字体颜色

b.setBackground(颜色。黄色);//设置背景颜色

b . addactionlistener(this);

pn2.add(b,“居中”);

b = new JButton(" OFF ");

B.setToolTipText("请按退出键!");//设置off键,点击退出应用程序b . addactionlistener(this);

b.setForeground(颜色。红色);//字体颜色

b.setBackground(颜色。橙色);//背景颜色

pn2.add(b,“东”);

b = new JButton(" 1 ");//添加butten 1

b . addactionlistener(this);

pn 1 . add(b);

b = new JButton(" 2 ");//添加butten 2

b . addactionlistener(this);

pn 1 . add(b);

b = new JButton(" 3 ");//添加butten 3

b . addactionlistener(this);

pn 1 . add(b);

b =新JButton("+");//添加butten +

b.setForeground(颜色。蓝色);//设置字体颜色

b . addactionlistener(this);

pn 1 . add(b);

b = new JButton(" 4 ");//添加butten 4

b . addactionlistener(this);

pn 1 . add(b);

b = new JButton(" 5 ");//添加butten 5

b . addactionlistener(this);

pn 1 . add(b);

b = new JButton(" 6 ");//添加按钮6

b . addactionlistener(this);

pn 1 . add(b);

b =新JButton("-");//添加按钮-

b.setForeground(颜色。蓝色);//设置字体颜色

b . addactionlistener(this);

pn 1 . add(b);

b = new JButton(" 7 ");//添加按钮7

b . addactionlistener(this);

pn 1 . add(b);

b = new JButton(" 8 ");//添加按钮8

b . addactionlistener(this);

pn 1 . add(b);

b = new JButton(" 9 ");//添加按钮9

b . addactionlistener(this);

pn 1 . add(b);

b = new JButton(" * ");//添加按钮*

b.setForeground(颜色。蓝色);//设置字体颜色

b . addactionlistener(this);

pn 1 . add(b);

b = new JButton(" 0 ");//添加按钮0

b . addactionlistener(this);

pn 1 . add(b);

b =新的JButton(" . ");//添加按钮。

b . addactionlistener(this);

pn 1 . add(b);

b =新JButton(" = ");//添加按钮=

b.setForeground(颜色。红色);//设置字体颜色

b . addactionlistener(this);

pn 1 . add(b);

b =新JButton(" \ \ ");//添加按钮\

b.setForeground(颜色。蓝色);//设置字体颜色

b . addactionlistener(this);

pn 1 . add(b);

jf.setSize(300,300);//设置大小

JF . set visible(true);//设置为可见

}

//处理按钮被按下时的动作,进行相应的处理。

公共无效操作已执行(操作事件e)

{

string command = e . getactioncommand();

TF . settext(TF . gettext()+command);

If(command.equals("CLEAR")) //按下清除键时返回初始状态。

{

s 1 = null;

s =

TF . settext(" ");//记录输入值的变量被清除。

}

else if(command . equals(" OFF "))system . exit(0);//off键关闭应用程序。

else if(!command . equals(" * ")& amp;& amp!command.equals("\\ ")

& amp& amp!command . equals("+" & amp;& amp!command.equals("-")

& amp& amp!command . equals(" = ")//确定输入是否为数字。

{

If(s1==null)//判断输入是否为第一个。

s1 =命令;

else s 1+=命令;

d1 =新的Double(s1)。double value();//将字符串类型转换为双精度类型,并恢复输入的数字。

尝试

{

if(s . equals("+")d 1 = d 1+D2;//加法运算

else if(s . equals("-")d 1 = D2-d 1;//减法运算

else if(s . equals(" * "))d 1 = d 1 * D2;//乘法运算

else if(s . equals(" \ \ ")d 1 = D2/d 1;//除法运算

}

catch(例外ex)

{

TF . settext(" Error ");//错误显示“错误”

system . out . println(ex . getmessage());

}

}

else if(!command . equals(" = ")//确定输入是否为+-* \

{

s =命令;

s 1 = null;

D2 = d 1;

}

当else// input =时,显示运算结果。

{

TF . settext(TF . gettext()+d 1);

}

}

公共静态void main(String [] args)

{

新计算器()。init();

}

}