跪求简单计算器的j**a代码,要入门级的编程~~
import j**a.awt.*;import j**a.awt.event.*;import j**ax.swing.*;import j**a.util.*;public class counter { public static void main(string[] args) { counterframe frame = new counterframe(); frame.show(); }}class counterframe extends jframe { public counterframe() { jmenubar menubar = new jmenubar(); jmenu menufile = new jmenu(); jmenu menufile1 = new jmenu(); jmenu menufile2 = new jmenu(); jmenu menufile3 = new jmenu(); jmenuitem menufileexit = new jmenuitem(); menufile.settext("文件"); menufile1.settext("编辑"); menufile2.settext("查看"); menufile3.settext("帮助"); menufileexit.settext("退出"); menufileexit.addactionl**tener ( new actionl**tener() { public void actionperformed(actionevent e) { counterframe.th**.windowclosed(); } } ); menufile.add(menufileexit); menubar.add(menufile); menubar.add(menufile1); menubar.add(menufile2); menubar.add(menufile3); settitle("计算器"); setjmenubar(menubar); setsize(new dimension(400, 280));th**.getcontentpane().add(new allpanel());th**.addwindowl**tener ( new windowadapter() { public void windowclosing(windowevent e) { counterframe.th**.windowclosed(); } } ); }protected void windowclosed() { system.exit(0); }}class tool {public static tool instance; private jtextfield field; private tool() { th**.field=new jtextfield(30); th**.field.sethorizontalalignment(jtextfield.right); }public static tool getinstance() { if(instance==**) { instance=new tool(); } return instance; } public jtextfield getfield() { return (th**.field); }}class allpanel extends jpanel { public allpanel() { th**.setlayout(new borderlayout(0,7)); northpanel np=new northpanel(); centerpanel cp=new centerpanel(); th**.add(np,borderlayout.north); th**.add(cp,borderlayout.center); } }class centercenter extends jpanel {static vector vec=new vector(); static vector vc=new vector(); static vector vc1=new vector(); static vector vc2=new vector(); static vector vc3=new vector(); static string begin="yes"; static double add; static double jq; static double cs; static double cq; static double dy; static string jg; static string what; static double tool=0; static string to="yes"; /** * method centercenter * * */ public centercenter() { // todo: add your code here final jtextfield text=tool.getinstance().getfield(); th**.setlayout(new gridlayout(4,5,3,3)); string arg[] ={"7","8","9","/","sqrt","4","5","6","*","%","1","2","3","-","1/x","0","+/-",".","+","="}; for(int i=0;i<20;i++) { final **utton b=new **utton(arg[i]); //th**.add(new **utton(arg[i])); th**.add(b); if(i==0||i==1||i==2||i==5||i==6||i==7||i==10||i==11||i==12||i==15) { b.addactionl**tener(new actionl**tener() { public void actionperformed(actionevent e) { string mark=b.gettext(); string ma=text.gettext(); if(vc3.contains("v3")) { text.settext("0."+mark); vc3.clear(); }else if(vc.contains("a")) { if(vc2.contains("v2")) { text.settext("0."+mark); vc.clear(); vc2.clear();} else { text.settext(mark); vc.clear(); vec.clear(); vec.add(mark); }} else { text.settext(ma.trim()+mark); vec.add(mark); } begin="no"; to="yes";} }); }if(i==17) { b.addactionl**tener(new actionl**tener() { public void actionperformed(actionevent e) { string mar=b.gettext(); string m=text.gettext(); if("yes".equals(begin)) { vc3.add("v3"); } if(vc1.contains("v1")) { vc2.add("v2"); vc1.clear(); } if(!vec.contains(".")&&!vc.contains("a")) { text.settext(m.trim()+mar); vec.add("."); } } }); } if(i==18) { b.addactionl**tener(new actionl**tener() { public void actionperformed(actionevent e) { string ma=text.gettext(); add=double.parsedouble(ma); if(what==**) { tool=add; what="add"; } else { tool=tool+add; text.settext(string.valueof((tool))); } vc.add("a"); vc1.add("v1"); to="+"; } }); } if(i==13) { b.addactionl**tener(new actionl**tener() { public void actionperformed(actionevent e) { string ma=text.gettext(); jq=double.parsedouble(ma); if(what==**) { tool=jq; what="jq"; } else { tool=tool-jq; text.settext(string.valueof((tool))); } vc.add("a"); vc1.add("v1"); to="-"; } }); } if(i==3) { b.addactionl**tener(new actionl**tener() { public void actionperformed(actionevent e) { string ma=text.gettext(); cq=double.parsedouble(ma); if(what==**) { tool=cq; what="cq"; } else { tool=tool/cq; text.settext(string.valueof((tool))); } vc.add("a"); vc1.add("v1"); to="/"; } }); } if(i==4) { b.addactionl**tener(new actionl**tener() { public void actionperformed(actionevent e) { string ma=text.gettext(); cq=double.parsedouble(ma); text.settext(string.valueof(math.sqrt(cq))); } }); } if(i==8) { b.addactionl**tener(new actionl**tener() { public void actionperformed(actionevent e) { string ma=text.gettext(); cs=double.parsedouble(ma); if(what==**) { tool=cs; what="cs"; } else { tool=tool*cs; text.settext(string.valueof((tool))); } vc.add("a"); vc1.add("v1"); to="*"; } }); } if(i==19) { b.addactionl**tener(new actionl**tener() { public void actionperformed(actionevent e) { string ma=text.gettext(); dy=double.parsedouble(ma); if(what=="add") { jg=string.valueof((tool+dy)); } if(what=="jq") { jg=string.valueof((tool-dy)); } if(what=="cs") { jg=string.valueof((tool*dy)); } if(what=="cq") { jg=string.valueof((tool/dy)); } if(what==**) { if(to=="+") { tool=add; jg=string.valueof(tool+dy); } else if(to=="-") { tool=jq; jg=string.valueof(dy-tool); } else if(to=="*") { tool=cs; jg=string.valueof(dy*tool); } else if(to=="/") { tool=cq; jg=string.valueof(dy/tool); } else { jg=string.valueof(dy); } } text.settext(jg); vec.clear(); vec.add("."); vc.add("a"); vc1.add("v1"); what=**; tool=0; } }); } }}}class centernorth extends jpanel {public centernorth() {final jtextfield text=tool.getinstance().getfield(); **utton **1=new **utton("backspace"); **utton **2=new **utton(" ce "); **utton **3=new **utton(" c "); th**.add(**1); th**.add(**2); th**.add(**3); **1.addactionl**tener(new actionl**tener(){ public void actionperformed(actionevent e) { string back=tool.getinstance().getfield().gettext(); text.settext(backmethod(back)); centercenter.vec.remove(centercenter.vec.size()-1); }}); **3.addactionl**tener(new actionl**tener(){ public void actionperformed(actionevent e) { text.settext("0."); centercenter.vec.clear(); centercenter.vec.add("."); centercenter.vc.add("a"); centercenter.begin="yes"; centercenter.vc1.clear(); centercenter.what=**; centercenter.tool=0;}}); } public string backmethod(string str) { return str.substring(0,str.length()-1); } }class centerpanel extends jpanel { public centerpanel() { th**.setlayout(new borderlayout(8,7)); centernorth cn=new centernorth(); centercenter cc=new centercenter(); centerwest cw=new centerwest(); th**.add(cn,borderlayout.north); th**.add(cc,borderlayout.center); th**.add(cw,borderlayout.west); } }class centerwest extends jpanel { public centerwest() { th**.setlayout(new gridlayout(4,1,3,3)); th**.add(new **utton("mc")); th**.add(new **utton("mr")); th**.add(new **utton("ms")); th**.add(new **utton("m+"));}}class northpanel extends jpanel { private jtextfield tf; public northpanel() { tf=tool.getinstance().getfield(); th**.add(tf); } }才子_辉祝您愉快! 20210311