欢迎光临
我们一直在努力

用了12个小时完成一个计算器小作业-JSP教程,Java技巧及代码

建站超值云服务器,限时71元/月

import java.awt.*;import java.awt.event.actionevent;import java.awt.event.actionlistener;import java.awt.event.windowadapter;import java.awt.event.windowevent;

import javax.swing.jtextfield;import java.awt.color;

public class createframe{    frame f;    jtextfield text,text2;    button b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16,b17,        b18,b19,b20,b21,b22,b23,b24,b25,b26,b27;    double op1,op2,op2x,op3;//运算的三个数:op1,op2是运算数,op3是运算结果    char op=0,opx=0,opp=0;//运算操作符    boolean b=false;//我按过0键了,下次该按.了    boolean c=false;//按过运算符了,下次按数字时该清屏显示    boolean firstdeng=true;//第一次做=

    double mjia=0;

    public static void main(string[] args)    {        createframe cf=new createframe();        cf.createwindow();    }        public void createwindow()    {        f = new frame("calculator");        f.setbackground(color.light_gray);                // 增加关闭事件的监听器        this.shutwindow(f);

        text=new jtextfield();        text.sethorizontalalignment(jtextfield.right);        text.setsize(250,22);        text.setlocation(5,25);        text.seteditable(false);        text.setbackground(color.white);        text.settext("0.");                text2=new jtextfield();        text2.sethorizontalalignment(jtextfield.center);        text2.setsize(37,22);        text2.setlocation(5,50);        text2.seteditable(false);        text2.settext("");                text2.setbackground(color.light_gray);                b1 = new button("backspace");         b1.setsize(70,22);        b1.setlocation(52,50);                b2 = new button("ce");         b2.setsize(60,22);        b2.setlocation(128,50);                b3 = new button("c");         b3.setsize(60,22);        b3.setlocation(194,50);                        b4 = new button("mc");        b4.setsize(37,22);        b4.setlocation(5,75);        b5 = new button("7");        b5.setsize(37,22);        b5.setlocation(50,75);        b6 = new button("8");        b6.setsize(37,22);        b6.setlocation(93,75);        b7 = new button("9");        b7.setsize(37,22);        b7.setlocation(136,75);        b8 = new button("/");        b8.setsize(37,22);        b8.setlocation(179,75);        b9 = new button("sqrt");        b9.setsize(37,22);        b9.setlocation(218,75);                b10 = new button("mr");        b10.setsize(37,22);        b10.setlocation(5,100);        b11 = new button("4");        b11.setsize(37,22);        b11.setlocation(50,100);        b12 = new button("5");        b12.setsize(37,22);        b12.setlocation(93,100);        b13 = new button("6");        b13.setsize(37,22);        b13.setlocation(136,100);        b14 = new button("*");        b14.setsize(37,22);        b14.setlocation(179,100);        b15 = new button("%");        b15.setsize(37,22);        b15.setlocation(218,100);                b16 = new button("ms");        b16.setsize(37,22);        b16.setlocation(5,125);        b17 = new button("1");        b17.setsize(37,22);        b17.setlocation(50,125);        b18 = new button("2");        b18.setsize(37,22);        b18.setlocation(93,125);        b19 = new button("3");        b19.setsize(37,22);        b19.setlocation(136,125);        b20 = new button("-");        b20.setsize(37,22);        b20.setlocation(179,125);        b21 = new button("1/x");        b21.setsize(37,22);        b21.setlocation(218,125);                b22 = new button("m+");        b22.setsize(37,22);        b22.setlocation(5,150);        b23 = new button("0");        b23.setsize(37,22);        b23.setlocation(50,150);        b24 = new button("+/-");        b24.setsize(37,22);        b24.setlocation(93,150);        b25 = new button(".");        b25.setsize(37,22);        b25.setlocation(136,150);        b26 = new button("+");        b26.setsize(37,22);        b26.setlocation(179,150);        b27 = new button("=");        b27.setsize(37,22);        b27.setlocation(218,150);                f.setlayout(null);       

        f.add(text);        f.add(text2);                b1.addactionlistener(new buttonhandler());        b2.addactionlistener(new buttonhandler());        b3.addactionlistener(new buttonhandler());        b4.addactionlistener(new buttonhandler());        b5.addactionlistener(new buttonhandler());        b6.addactionlistener(new buttonhandler());        b7.addactionlistener(new buttonhandler());        b8.addactionlistener(new buttonhandler());        b9.addactionlistener(new buttonhandler());        b10.addactionlistener(new buttonhandler());        b11.addactionlistener(new buttonhandler());        b12.addactionlistener(new buttonhandler());        b13.addactionlistener(new buttonhandler());        b14.addactionlistener(new buttonhandler());        b15.addactionlistener(new buttonhandler());        b16.addactionlistener(new buttonhandler());        b17.addactionlistener(new buttonhandler());        b18.addactionlistener(new buttonhandler());        b19.addactionlistener(new buttonhandler());        b20.addactionlistener(new buttonhandler());        b21.addactionlistener(new buttonhandler());        b22.addactionlistener(new buttonhandler());        b23.addactionlistener(new buttonhandler());        b24.addactionlistener(new buttonhandler());        b25.addactionlistener(new buttonhandler());        b26.addactionlistener(new buttonhandler());        b27.addactionlistener(new buttonhandler());

                f.add(b1);        f.add(b2);        f.add(b3);                f.add(b4);        f.add(b5);        f.add(b6);        f.add(b7);        f.add(b8);        f.add(b9);                f.add(b10);        f.add(b11);        f.add(b12);        f.add(b13);        f.add(b14);        f.add(b15);                f.add(b16);        f.add(b17);        f.add(b18);        f.add(b19);        f.add(b20);        f.add(b21);                f.add(b22);        f.add(b23);        f.add(b24);        f.add(b25);        f.add(b26);        f.add(b27);                    f.setresizable(false);        f.setsize(260,180);                //窗口居中显示               this.centershow(260,180,f);                        f.setvisible(true);            }        public void centershow(int x,int y,frame f)    {        //窗口居中显示        toolkit tk=toolkit.getdefaulttoolkit();        dimension d=tk.getscreensize();        int screenheight=d.height;        int screenwidth=d.width;        f.setlocation((screenwidth-x)/2,(screenheight-y)/2);    }        public void shutwindow(frame f)    {        //add a listener for the close event        f.addwindowlistener(new windowadapter(){            public void windowclosing(windowevent evt)             {                            // 退出程序                system.exit(0);            }        });    }        public double getcurrentnum()//得到当前文本框内数字    {                return 1;    }        //四则运算    public double calculatenow(double op1,char op,double op2)    {        double op1b=0.0;        switch(op)        {            case +:                op1b=op1+op2;             break;         case -:             op1b=op1-op2;          break;         case *:             op1b=op1*op2;             break;         case /:             if(op2==0.0)                 op1b=op1;             else                 op1b=op1/op2;             break;         case %:             if(op2==0.0)                 op1b=op1;             else                 op1b=op1%op2;             break;         case 0:             op1b=op2;             break;        }        return op1b;    }         class buttonhandler implements actionlistener    {     public void actionperformed(actionevent e)        {      system.out.println("buttons lable is :" + e.getactioncommand()+"||"              +createframe.this.op1              +createframe.this.op              +createframe.this.op2              +"="              +createframe.this.op3);               string command=e.getactioncommand();         string currenttext=text.gettext();         if(currenttext.equals("函数输入无效.") || currenttext.equals("除数不能为零."))         {             currenttext="0.";             text.settext(currenttext);         }                           if(command=="backspace")         {             if(currenttext.length()>1)                 currenttext=currenttext.substring(0,currenttext.length()-1);             else if(currenttext.length()<=1)             {                 currenttext="0.";                              }             text.settext(currenttext);         }                  if(command=="ce")         {             text.settext("0.");             op2=0.0;             //return;         }                  if(command=="c")         {             text.settext("0.");             op3=0.0;             op1=0.0;             op2=0.0;             op2x=0.0;             op=0;             opx=0;             opp=0;             firstdeng=true;             b=false;             c=false;                     }                  if(command=="0")         {             if(text.gettext().equals("0."))             {                 text.settext("0.");                 b=true;             }             else                 text.settext(currenttext+"0");         }                  if(command=="1")         {             if(c)             {                 c=false;                 text.settext("1");                 return;             }             if((text.gettext().equals("0.") || text.gettext().equals("0")) & !b)                 text.settext("1");             else                 text.settext(currenttext+"1");                      }                  if(command=="2")         {             if(c)             {                 text.settext("2");                 c=false;                 return;             }             if((text.gettext().equals("0.") || text.gettext().equals("0")) & !b)                 text.settext("2");             else                 text.settext(currenttext+"2");             //return;         }         if(command=="3")         {             if(c)             {                 c=false;                 text.settext("3");                 return;             }             if((text.gettext().equals("0.") || text.gettext().equals("0")) & !b)                 text.settext("3");             else                 text.settext(currenttext+"3");             //return;         }         if(command=="4")         {             if(c)             {                 c=false;                 text.settext("4");                 return;             }             if((text.gettext().equals("0.") || text.gettext().equals("0")) & !b)                 text.settext("4");             else                 text.settext(currenttext+"4");             //return;         }         if(command=="5")         {             if(c)             {                 c=false;                 text.settext("5");                 return;             }             if((text.gettext().equals("0.") || text.gettext().equals("0")) & !b)                 text.settext("5");             else                 text.settext(currenttext+"5");             //return;         }         if(command=="6")         {             if(c)             {                 c=false;                 text.settext("6");                 return;             }             if((text.gettext().equals("0.") || text.gettext().equals("0")) & !b)                 text.settext("6");             else                 text.settext(currenttext+"6");             //return;         }         if(command=="7")         {             if(c)             {                 c=false;                 text.settext("7");                 return;             }             if((text.gettext().equals("0.") || text.gettext().equals("0")) & !b)                 text.settext("7");             else                 text.settext(currenttext+"7");             //return;         }         if(command=="8")         {             if(c)             {                 c=false;                 text.settext("8");                 return;             }             if((text.gettext().equals("0.") || text.gettext().equals("0")) & !b)                 text.settext("8");             else                 text.settext(currenttext+"8");             //return;         }         if(command=="9")         {             if(c)             {                 c=false;                 text.settext("9");                 return;             }             if((text.gettext().equals("0.") || text.gettext().equals("0")) & !b)                 text.settext("9");             else                 text.settext(currenttext+"9");                      }                  if(command=="/")         {                             op2=double.valueof(text.gettext()).doublevalue();             if(opp!==)             {                 op1=calculatenow(op1,op,op2);                 opp=/;             }             op=/;             opx=/;             text.settext(string.valueof(op1));             c=true;             //b=false;             firstdeng=true;            

           }                  if(command=="*")         {             op2=double.valueof(text.gettext()).doublevalue();               if(opp!==)             {                 op1=calculatenow(op1,op,op2);                 opp=*;             }             op=*;             opx=*;             text.settext(string.valueof(op1));             c=true;             firstdeng=true;                      }                       if(command=="-")         {                         op2=double.valueof(text.gettext()).doublevalue();             if(opp!==)             {                 op1=calculatenow(op1,op,op2);                 opp=-;             }             op=-;             opx=-;             text.settext(string.valueof(op1));             c=true;             firstdeng=true;         }         if(command=="+")         {             op2=double.valueof(text.gettext()).doublevalue();             if(opp!==)             {                 op1=calculatenow(op1,op,op2);                 opp=+;             }             op=+;             opx=+;             text.settext(string.valueof(op1));             c=true;             firstdeng=true;         }                  if(command==".")         {             if(text.gettext().indexof(.)>1)                 return;             else if(text.gettext().indexof(.)==-1)             {                 text.settext(currenttext+".");              b=true;             }             else if(text.gettext().indexof(.)==1)                 b=true;                      }        

         if(command=="+/-")         {             if(double.valueof(text.gettext()).doublevalue()!=0)             {                 double d=-double.valueof(text.gettext()).doublevalue();                           text.settext(string.valueof(d));              op2=d;              op2x=d;             }         }                  if(command=="%")         {             op2=double.valueof(text.gettext()).doublevalue();             if(op1!=0 & op2!=0)             {                 double temp=op1*op2;                 temp=temp/100;                 text.settext(string.valueof(temp));             }                                 }                      if(command=="sqrt")         {             double in=double.valueof(text.gettext()).doublevalue();             if(in<0)                 text.settext("函数输入无效.");             else             {                 double sd=math.sqrt(in);                 text.settext(string.valueof(sd));                 op2=sd;              op2x=sd;             }

         }                  if(command=="1/x")         {             double in=double.valueof(text.gettext()).doublevalue();             if(in==0)                 text.settext("除数不能为零.");             else             {                 double sd=1/in;                 text.settext(string.valueof(sd));                 op2=sd;              op2x=sd;             }         }                  if(command=="=")         {             op2=double.valueof(text.gettext()).doublevalue();             system.out.println("=========="+op2);             if(firstdeng)             {                 op2x=op2;                 firstdeng=false;             }                          op1=calculatenow(op1,op,op2x);             opp==;             text.settext(string.valueof(op1));         }                  if(command=="mc")         {             mjia=0;             text2.settext("");         }         if(command=="mr")         {             text.settext(string.valueof(mjia));         }         if(command=="ms")         {             mjia=double.valueof(text.gettext()).doublevalue();             text2.settext("m");         }         if(command=="m+")         {             mjia=mjia+double.valueof(text.gettext()).doublevalue();         }              }

    }}

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 用了12个小时完成一个计算器小作业-JSP教程,Java技巧及代码
分享到: 更多 (0)

相关推荐

  • 暂无文章