Java编程计算器实现+-空退出
导入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();
}
}