模拟科学计算器_第1页
模拟科学计算器_第2页
模拟科学计算器_第3页
模拟科学计算器_第4页
模拟科学计算器_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassCaextendsJFrameimplementsActionListener(〃***********************************************************************〃标准型计算器控件键钮staticJFramefl=newJFrame("计算器");privateStringKEYS[]=privateStringM[]={"”,“MC”,”MR","MS","M+”};privateStringCOM[]={"Backspace",privateJButtonkeys[]=newJButton[KEYS.length];privateJButtoncom[]=newJButton[COM.length];privateJButtonm[]=newJButton[M.length];privateJTextFieldresult,hh,jj;MenuBarmenubarl=newMenuBar();Menuedit=newMenu(M编辑(E)"),view=newMenu("查看(V),help=newMenu("帮助(H)");Menuitemcopy=newMenuitem("复制(C)”),paste=newMenultem(H粘贴(P),standar=newMenuitem("标准型(T),science=newMenultem("科学型⑶"),numgroup=newMenultem(u数字分组(I),helpt=newMenultem("帮助主题(H)"),about=newMenultem("关于计算器(A)”);privatebooleanfirstDigit=true;〃判断第一个输入的字符是否是数字privatedoubleresultNum=0.0zresultNum2=0.0;〃中间结果privateStringoperator=”=”,co,str;operator2=privatebooleanoperateValidFlag=true;〃***********************************************************************〃科学性计算器控件及按钮staticJFramef2=newJFrame(H科学计算器");

privateJTextFieldresult?;privateString[]KON={"sta”,”F-E”「C”MC“,”Ave“,“dms”*xp“,”ln”,”MR“,"Sum“,“sin“,"xAy","log”,”MS”,”s“,”cos”,“xA3”,”n!“,”M+",”Dat“「'tan“广x八2“,“l/x“,”pi''};privateString[]KO=(,,7,,;,8,,;,9,,/7,,;,Mod,,;,And,,/privateStringITM[]={”标准型“,“科学型“,”十六进制数(H)F5”,”十进制(D)F6",”八进制(O)F7”,"二进制⑻F8","四字(Q)F12";,DW0RD值(R)F2'7,单字(W)F3";'字节(Y)F4”,“数字分组(I广};privatefinalString[]COMM=("Backspace",,,CE,,/,,C11);privateJButtoncomm[]=newJButton[COMM.length];privateJButtonkon[]=newJButton[KON.length];privateJButtonko[]=newJButtonfKO.length];privateMenuitemitm[]=newMenultem[ITM.length];privateJPanelpanel。,panell,panel2,panel3,panel4,panel5,panel6;Checkboxcheckboxl,checkbox2,checkbox3,checkbox%MenuBarmenubar2=newMenuBar();〃添加菜单条Menuedit2=newMenu("编辑(E)"),view2=newMenu(”查看(V)1'),help2=newMenu(H帮助(H)n);Menuitemcopy2=newMenultem(n复制(C)Ctrl+C"),past2=newMenultem(H粘贴(P)Ctrl+V"),standar2=newMenultem("标准型⑴”),science2=newMenultem("科学型(S)"),numgroup2=newMenultem(u数字分组(I)"),menuiteml=newmenuitem2=newmenuitem3=newmenuitem4=newmenuitem5=newmenuitem6=newmenuitem7=newMenultemf十六进制数(H)F5"),Menuitem("十进制(D)F6"),Menultem("八进制(0)F7"),Menuitem(”二进制(B)F8”),Menultem("四字(Q)F12"),Menultem(nDWORD值(R)F2I,)/Menultemf1单字(W)F3,,)/

menuitem8=newMenultem(”字节(Y)F4"),helpt2=newMenultem(u帮助主题(H广),about2=newMenultem(H关于计算器(A)");//***********************************************************************〃构造函数menuiteml=newmenuitem2=newmenuitem3=newmenuitem4=newmenuitem5=newmenuitem6=newmenuitem7=new//*publicCa()〃标准型开始初始化********************〃标准型开始初始化********************result=newJTextField(,,O.H);result.setHorizontalAlignment(JTextField.RIGHT);〃文字右对齐result.setEditable(false);〃设置为不可编辑result.setBackground(Color.WHITE);〃设置颜色为白色JPanelkO=newJPanel();k0.setLayout(newGridLayout(4,5,5/5));for(inti=0;i<KEYS.Iength;i++){keys[i]=newJButton(KEYS[i]);kO.add(keys[i]);keys[i].setForeground(Color.blue);)keys[3].setForeground(Color.red);keys[8].setForeground(Color.red);keys[13].setForeground(Color.red);keys[18].setForeground(Color.red);keys[19].setForeground(Color.red);JPanelcO=newJPanel();c0.setLayout(newGridLayout(135,5));for(inti=0;i<COM・length;i++){com[i]=newJButton(COM[i]);c0.add(com[i]);com[i].setForeground(Color.red);)JPanelmO=newJPanel();m0.setLayout(newGridLayout(5,1,5,5));for(inti=0;i<M・length;i++)m[i]=newJButton(M[i]);mO.add(m[i]);m[i].setForeground(Color.red);}m[0].setForeground(Color.black);〃fl的监视器for(inti=0;i<KEYS.Iength;i++){keys[i].addActionListener(this);}for(inti=0;i<COM.Iength;i++){com[i].addActionListener(this);}for(inti=0;i<M.length;i++){m[i].addActionListener(this);}〃复制事件copy.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)(intcount;count=str.length();if(count!=0)co=result.getText();elseSystem.out.println("没有可复制的对象”);}});〃粘贴事件paste.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)str=co;result.setText(str);});〃复制事件copy2.addActionListener(newActionListener()publicvoidactionPerformed(ActionEvente)(intcount;count=str.length();if(count!=0)co=result2.getText();elseSystem.out.println("没有可复制的对象");}»;〃粘贴事件past2.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)(str=co;result2.setText(str);}});edit.add(copy);edit.add(paste);view.add(standar);view.add(science);view.addSeparator();view.add(numgroup);help.add(helpt);help.addSeparator();help.add(about);menubarl.add(edit);menubarl.add(view);menubarl.add(help);〃整体布局JPanelpl=newJPanel();pl.setLayout(newBorderLayout());pl.add(l,North,,/cO);pl.add(,,Center,,,kO);JPanelp2=newJPanel();p2.setLayout(newBorderLayout());p2.add("Center",result);fl.setLayout(newBorderLayout(3,5));fl.add(”North”,p2);fl.add(,lCenter,,/pl);fl.add(,lWest,,,mO);fl.setBackground(Color.LIGHT_GRAY);fl.setLocation(200,200);fl.setMenuBar(menubarl);fl.setVisible(true);fl.setResizable(false);//不可最大化fl.pack();〃紧凑fl.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);〃标准型初始化结束〃****************************************************standar2.addActionListener(newActionListener()(publicvoidactionPerformed(ActionEvente)(fl.setVisible(true);f2.setVisible(false);〃按钮不可操作}});science.addActionListener(newActionListener()(publicvoidactionPerformed(ActionEvente)(fl.setVisible(false);f2.setVisible(true);//按钮不可操作}));〃****************************************************〃科学性初始化开始panelO=newJPanel();panell=newJPanel();panel2=newJPanel();panel3=newJPanel();panel4=newJPanel();panel5=newJPanel();panel6=newJPanel();panel0.setLayout(newGridLayout(l,4));〃设置网格型布局管理器panell.setLayout(newGridLayout(l,3,30,0));panel2.setLayout(newGridLayout(l,2));panel3.setLayout(newGridLayout(l,3,5,0));panel4.setLayout(newGridLayout(5,5,5,5));panels.setLayout(newGridLayout(5,6,5,5));panel6.setLayout(newFlowLayout(FlowLayout.LEFT));〃按钮左对齐result?=newJTextField("O.",lOO);result2.setHorizontalAlignment(JTextField.RIGHT);//文字右对齐result2.setEditable(false);〃设置为文本不可编辑result2.setBackground(Color.WHITE);〃设置文本框颜色为白色CheckboxGroupcbgl=newCheckboxGroup();checkboxl=newCheckbox(H十六进制",false,cbgl);checkbox2=newCheckbox(H十进制”,true,cbgl);checkbox3=newCheckbox。八进制”,false,cbgl);checkbox4=newCheckbox。二进制”,false,cbgl);panelO.add(checkboxl);panel0.add(checkbox2);panel0.add(checkbox3);panel0.add(checkbox4);CheckboxGroupcbg2=newCheckboxGroup();panell.add(newCheckbox(H角度,l,true,cbg2));panell.add(newCheckbox(H弧度”,false,cbg2));panell.add(newCheckbox(H梯度”,false,cbg2));儿abelHH=new儿abel(H”);panel2.add(newCheckbox(”lnv",false));panel2.add(newCheckbox("Hyp",false));hh=newJTextField();jj=newJTextField();hh.setText("");hh.setEditable(false);jj.setText("");jj.setEditable(false);panel2.add(hh);panel2.add(HH);panel2.add(jj);panel6.add(result2);edit2.add(copy2);edit2.add(past2);view2.add(standar2);view2.add(science2);view2.addSeparator();view2.add(menuiteml);view2.add(menuitem2);view2.add(menuitem3);view2.add(menuitem4);view2.addSeparator();view2.add(menuitem5);view2.add(menuitem6);view2.add(menuitem7);view2.add(menuitem8);view2.addSeparator();view2.add(numgroup2);help2.add(helpt2);help2.addSeparator();help2.add(about2);menubar2.add(edit2);menubar2.add(view2);menubar2.add(help2);for(inti=0;i<COMM.Iength;i++){comm[i]=newJButton(COMM[i]);panel3.add(comm[i]);comm[i].setForeground(Color.red);}for(inti=0;i<KON.Iength;i++){kon[i]=newJButton(KON[i]);panel4.add(kon[i]);kon[i].setForeground(Color.magenta);}kon[4].setForeground(Color.red);kon[9].setForeground(Color.red);kon[14].setForeground(Color.red);kon[19].setForeground(Color.red);kon[0].setForeground(Color.blue);kon[24].setForeground(Color.blue);kon[5].setForeground(Color.blue);kon[10].setForeground(Color.blue);kon[15].setForeground(Color.blue);kon[20].setForeground(Color.blue);for(inti=0;i<KO・length;i++){ko[i]=newJButton(KO[i]);panels.add(ko[i]);ko[i].setForeground(Color.red);}ko[0].setForeground(Color.blue);ko[l].setForeground(Color.blue);ko[2].setForeground(Color.blue);ko[6].setForeground(Color.blue);ko[7].setForeground(Color.blue);ko[8].setForeground(Color.blue);ko[12].setForeground(Color.blue);ko[13].setForeground(Color.blue);ko[14].setForeground(Color.blue);ko[18].setForeground(Color.blue);ko[19].setForeground(Color.blue);ko[20].setForeground(Color.blue);〃添加监视器for(inti=0;i<KON.Iength;i++){kon[i].addActionListener(newca2Actionlistener());}for(inti=0;i<KO.Iength;i++){ko[i].addActionListener(newca2Actionlistener());}for(inti=0;i<COMM.Iength;i++){comm[i].addActionListener(newca2Actionlistener());}checkboxl.addltemListener(newitemListener());checkbox2.addltemListener(newitemListener());checkbox3.addltemListener(newitemListener());checkbox4.addltemListener(newitemListener());JPanelppi=newJPanel();ppl.setLayout(newGridLayout(3,l));ppl.add(panel6);JPanelpp2=newJPanel();pp2.setLayout(newFlowLayout(FlowLayout.LEFT));pp2.add(panel0);pp2.add(newJLabel(H"));pp2.add(panell);ppl.add(pp2);JPanelpp3=newJPanel();pp3.setLayout(newFlowLayout(FlowLayout.LEFT));pp3.add(panel2);pp3.add(new儿abel(H"));pp3.add(panel3);ppl.add(pp3);JPanelpp4=newJPanel();pp4.setLayout(newFlowLayout(FlowLayout.LEFT));JLabelNN=newJLabel(H");f2.setLayout(newGridLayout(2,l));f2.add(ppl);pp4.add(panel4);pp4.add(NN);pp4.add(panel5);f2.add(pp4);f2.setBackground(Color.LIGHT_GRAY);f2.setSize(655,340);f2.setLocation(200,200);f2.setMenuBar(menubar2);f2.setVisible(false);f2.setResizable(false);f2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}〃科学型初始化结束〃****************************************************〃标准型监听器publicvoidactionPerformed(ActionEvente){Stringlabel=e.getActionCommand();//获取事件源的标签if(label.equals(COM[0]))//按BackspacehandleBS();elseif(labeLequals(COM[l]))//按CEresult.setText(HO,1);elseif(labeLequals(COM[2]))//按ChandleC();elseif(labeLequals(M[l]))//按MChandleMC();elseif(labeLequals(M[2]))//按MRhandleMR();elseif(labeLequals(M[3]))//按MShandleMS();elseif(label.equals(M[4]))//按M+handleM();elseif("0123456789.,,.indexOf(label)>=0)//按数字键或者小数点handleNB(label);else//按运算符handleOR(label);)privatevoidhandleBS()//处理Backspace{Stringtext=newString(result.getText());intj=text.length();if(j>0){text=text.substringfOJ・1);if(text.length()==0)(result.setText(”O”);firstDigit=true;operator=}else(result.setText(text);}))privatevoidhandleNB(Stringkey)//处理数字键{if(firstDigit){result.setText(key);)elseif((key.equals(,,.,,))&&(result.getText().indexOf(,,.")<0)){result.setText(result.getText()+)elseif(!key.equals(,l.H)){result.setText(result.getText()+key);)firstDigit=false;privatevoidhandleC()〃处理C{result.setTextC'O");firstDigit=true;operator=官;)privatevoidhandleOR(Stringkey)//处理运算符{if(operator.equals(,7'1)){if(getNumberFromText()==0.0)(operateValidFlag=false;result.setText("除数不能是零");}elseresultNum/=getNumberFromText();)elseiffoperator.equalsC'l/x'1)){if(resultNum==0.0)(operateValidFlag=false;result.setText("零没有倒数");}elseresultNum=1/resultNum;)elseif(operator.equals(,l+H))resultNum+=getNumberFromText();elseif(operator.equals(,,-,l))resultNum-=getNumberFromText();elseif(operator.equals(,,*,,J)resultNum*=getNumberFromText();elseif(operator.equals(,lsqrtn))resultNum=Math.sqrt(resultNum);/////////elseif(operator.equals(,l%M))resultNum=resultNum/100;elseif(operator.equals(,,+/-M))resultNum=resultNum*(-1);elseif(operator.equals(,,=l1))(resultNum=getNumberFromText();)if(operateValidFlag)//双精度浮点数的运算{longtl;doublet2;tl=(long)resultNum;t2=resultNum-tl;if(t2==0)(result.setText(String.valueOf(tl));}else(result.setText(String.valueOf(resultNum));}}〃运算符等于用户按的按钮operator=key;firstDigit=true;operateValidFlag=true;}publicvoidhandleMC()//处理MC,清除内存(resultNum=0.0;result.setText(,,OH);m[0].setText(H");firstDigit=true;operator=}publicvoidhandleMR()//处理MR,重新调用存储的数据{if(result.getText()!=,m)〃有记忆数字(result.setText(,,n+resultNum);}}publicvoidhandleMS()〃处理MS,存储显示的数据resultNum=Double.valueOf(result.getText()).doubleValue();m[0].setText(,,MH);result.setText(,,OH);firstDigit=true;operator=}publicvoidhandleM()//处理M+,将显示的数字与巳经存储的数据相加要查看新的数字单击MR{resultNum=resultNum+Double.valueOf(result.getText()).doubleValue。;}〃标准型监听器定义部分结束〃****************************************************〃科学性监听器定义classitemListenerimplementsItemListener(publicvoiditemStateChanged(ltemEvente)(Checkboxcb=(Checkbox)e.getltemSelectable();//获取事件源的resetable();〃使按钮重新可用if(cb.getLabel().equals)"十六进制”)){kon[l].setEnabled(false);kon[5].setEnabled(false);kon[6].setEnabled(false);kon[7].setEnabled(false);kon[10].setEnabled(false);kon[ll].setEnabled(false);kon[15].setEnabled(false);kon[16].setEnabled(false);kon[20].setEnabled(false);kon[21].setEnabled(false);kon[24].setEnabled(false);kon[l].setForeground(Color.gray);kon[5].setForeground(Color.gray);kon[6].setForeground(Color.gray);kon[7].setForeground(Color.gray);kon[10].setForeground(Color.gray);kon[ll].setForeground(Color.gray);kon[15].setForeground(Color.gray);kon[16].setForeground(Color.gray);kon[20].setForeground(Color.gray);kon[21].setForeground(Color.gray);kon[24].setForeground(Color.gray);ko[l].setForeground(Color.blue);ko[2].setForeground(Color.blue);ko[24].setForeground(Color.blue);ko[25].setForeground(Color.blue);ko[26].setForeground(Color.blue);ko[27].setForeground(Color.blue);ko[28].setForeground(Color.blue);ko[29].setForeground(Color.blue);ko[0].setForeground(Color.blue);ko[6].setForeground(Color.blue);ko[7].setForeground(Color.blue);ko[8].setForeground(Color.blue);ko[13].setForeground(Color.blue);ko[14].setForeground(Color.blue);elseif(cb.getLabel().equals("十进制"))kon[5].setEnabled(false);kon[10].setEnabled(false);kon[15].setEnabled(false);kon[20].setEnabled(false);ko[24].setEnabled(false);ko[25].setEnabled(false);ko[26].setEnabled(false);ko[27].setEnabled(false);ko[28].setEnabled(false);ko[29].setEnabled(false);kon[5].setForeground(Color.gray);kon[10].setForeground(Color.gray);kon[15].setForeground(Color.gray);kon[20].setForeground(Color.gray);ko[24].setForeground(Color.gray);ko[25].setForeground(Color.gray);ko[26].setForeground(Color.gray);ko[27].setForeground(Color.gray);ko[28].setForeground(Color.gray);ko[29].setForeground(Color.gray);ko[l].setForeground(Color.blue);ko[2].setForeground(Color.blue);kon[l].setForeground(Color.magenta);kon[6].setForeground(Color.magenta);kon[7].setForeground(Color.magenta);kon[ll].setForeground(Color.magenta);kon[16].setForeground(Color.magenta);kon[21].setForeground(Color.magenta);kon[24].setForeground(Color.blue);ko[0].setForeground(Color.blue);ko[6].setForeground(Color.blue);ko[7].setForeground(Color.blue);ko[8].setForeground(Color.blue);ko[13].setForeground(Color.blue);ko[14].setForeground(Color.blue);elseif(cb.getLabel().equals("八进制"))kon[l].setEnabled(false);kon[5].setEnabled(false);kon[6].setEnabled(false);kon[7].setEnabled(false);kon[10].setEnabled(false);kon[ll].setEnabled(false);kon[15].setEnabled(false);kon[16].setEnabled(false);kon[20].setEnabled(false);kon[21].setEnabled(false);kon[24].setEnabled(false);ko[l].setEnabled(false);ko[2].setEnabled(false);ko[24].setEnabled(false);ko[25].setEnabled(false);ko[26].setEnabled(false);ko[27].setEnabled(false);ko[28].setEnabled(false);ko[29].setEnabled(false);kon[l].setForeground(Color.gray);kon[5].setForeground(Color.gray);kon[6].setForeground(Color.gray);kon[7].setForeground(Color.gray);kon[10].setForeground(Color.gray);kon[ll].setForeground(Color.gray);kon[15].setForeground(Color.gray);kon[16].setForeground(Color.gray);kon[20].setForeground(Color.gray);kon[21].setForeground(Color.gray);kon[24].setForeground(Color.gray);ko[l].setForeground(Color.gray);ko[2].setForeground(Color.gray);ko[24].setForeground(Color.gray);ko[25].setForeground(Color.gray);ko[26].setForeground(Color.gray);ko[27].setForeground(Color.gray);ko[28].setForeground(Color.gray);ko[29].setForeground(Color.gray);ko[0].setForeground(Color.blue);ko[6].setForeground(Color.blue);ko[7].setForeground(Color.blue);ko[8].setForeground(Color.blue);ko[13].setForeground(Color.blue);ko[14].setForeground(Color.blue);}elseif(cb.getLabel().equals)"二进制")){kon[l].setEnabled(false);kon[5].setEnabled(false);kon[6].setEnabled(false);kon[7].setEnabled(false);kon[10].setEnabled(false);kon[ll].setEnabled(false);kon[15].setEnabled(false);kon[16].setEnabled(false);kon[20].setEnabled(false);kon[21].setEnabled(false);kon[24].setEnabled(false);ko[l].setEnabled(false);ko[2].setEnabled(false);ko[24].setEnabled(false);ko[25].setEnabled(false);ko[26].setEnabled(false);ko[27].setEnabled(false);ko[28].setEnabled(false);ko[29].setEnabled(false);ko[0].setEnabled(false);ko[6].setEnabled(false);ko[7].setEnabled(false);ko[8].setEnabled(false);ko[13].setEnabled(false);ko[14].setEnabled(false);kon[l].setForeground(Color.gray);kon[5].setForeground(Color.gray);kon[6].setForeground(Color.gray);kon[7].setForeground(Color.gray);kon[10].setForeground(Color.gray);kon[ll].setForeground(Color.gray);kon[15].setForeground(Color.gray);kon[16].setForeground(Color.gray);kon[20].setForeground(Color.gray);kon[21].setForeground(Color.gray);kon[24].setForeground(Color.gray);ko[l].setForeground(Color.gray);ko[2].setForeground(Color.gray);ko[24].setForeground(Color.gray);ko[25].setForeground(Color.gray);ko[26].setForeground(Color.gray);ko[27].setForeground(Color.gray);ko[28].setForeground(Color.gray);ko[29].setForeground(Color.gray);ko[0].setForeground(Color.gray);ko[6].setForeground(Color.gray);ko[7].setForeground(Color.gray);ko[8].setForeground(Color.gray);ko[13].setForeground(Color.gray);ko[14].setForeground(Color.gray);}}}classca2ActionlistenerimplementsActionListener(publicvoidactionPerformed(ActionEvente){StringIabel2=e.getActionCommand();//获取事件源的标签if(label2.equals(COMM[0]))//按BackspacehandleBS2();elseif(label2.equals(COMM[l]))//按CEresult2.setText(,,0H);elseif(label2.equals(COMM[2]))//按ChandleC2();elseif(label2.equals(KON[4]))//按MChandleMC2();elseif(label2.equals(KON[9]))//按MRhandleMR2();elseif(label2.equals(KON[14]))//按MShandleMS2();elseif(label2.equals(KON[19]))//按M+handleM2();elseif(label2.equals(K0N[ll]))//按sinhandleSI();elseif(label2.equals(KON[12]))〃按xAyhandleYT();elseif(label2.equals(KON[13]))//按loghandleLO();elseif(label2.equals(KON[16]))〃按coshandleCO();elseif(label2.equals(KON[17]))〃按xA3handleTT();elseif(label2.equals(KON[22]))〃按xA2handlePF();elseif(label2.equals(KON[18]))//按n!handleJC();elseif(label2.equals(KON[21]))〃按tanhandleTA();elseif(label2.equals(KON[24]))//按piresult2.setText(M,I+3.141592653);elseif("0123456789.,,.indexOf(label2)>=O)〃按数字键或者小数点handleNB2(labe12);else//按运算符handleOR2(label2);}}〃科学性监听器定义结束〃****************************************************〃科学性计算器用到的函数voidresetable()〃使按钮重新可■用(for(inti=0;i<KON.Iength;i++)kon[i].setEnabled(true);for(inti=0;i<KO.Iength;i++)ko[i].setEnabled(true);}result2.setText(,,0H);firstDigit=true;operator2=)privatevoidhandleBS2()//处理Backspace{Stringtext2=newString(result2.getText());intj2=text2.length();if(j2>0){text2=text2.substring(OJ2-1);if(text2.length()==0)(result?.setText(,,0H);firstDigit=true;operator?=}else(result?.setText(text2);}}}publicvoidhandleMC2()〃处理MC,清除内存(resultNum2=0.0;result2.setText(,,0,');jj.setText("");firstDigit=true;operator?=官;}privatevoidhandleNB2(Stringkey)//处理数字键{if(firstDigit){result2.setText(key);}elseif((key.equals(,,."))&&(result2.getText().indexOf(,,.,,)<0))result?.setText(result2.getText()+elseif(!key.equals(,,.H)){result?.setText(result2.getText()+key);}firstDigit=false;}publicvoidhandleMR2()//处理MR,重新调用存储的数据(if(result2.getText()!=)〃有记忆数字result2.setText(,,n+resultNum2);}publicvoidhandleMS2()//处理MS,存储显示的数据{resultNum2=Double.valueOf(result2.getText()).doubleValue();result?.setText(HOn);jj.setText(,,M");firstDigit=true;operator?=官;}publicvoidhandleM2()//处理M+,将显示的数字与己经存储的数据相加要查看新的数字单击MR{resultNum2=resultNum2+Double.valueOf(result2.getText()).doubleValue();}publicvoidhandleSI()//sin(doublei=getNumberFromText2();result2.setText(String.valueOf(Math.sin(i)));}publicvoidhandleYT()//Y次方(if(getNumberFromText2()==0.01|getNumberFromText2()==1){resultNum2=getNumberFromText2();}else{for(inti=l;i<=getNumberFromText2();i++)resultNum2*=resultNum2;result?.setText(String.valueOf(resultNum2));)publicvoidhandleLO()〃对数(doublei=getNumberFromText2();resultNum2=Math.log(i);result?.setText(String.valueOf(resultNum2));}publicvoidhandleCO()//cos(doublei=getNumberFromText2();resultNum2=Math.cos(i);result?.setText(String.valueOf(resultNum2));}publicvoidhandleTT()//三次方(if(getNumberFromText2()==0.01|getNumberFromText2()==1){resultNum2=getNumberFromText2();)else{resultNum2=getNumberFromText2()*getNumberFromText2()*getNumberFromText2();)result?.setText(String.valueOf(resultNum2));}publicvoidhandlePF()//平方(if(getNumberFromText2()==0.01|getNumberFromText2()==1){resultNum2=getNumberFromText2();)else{resultNum2=getNumberFromText2()*getNumberFromText2();)result?.setText(String.valueOf(resultNum2));)publicvoidhandleJC()//阶乘doublei=getNumberFromText2();if((i%2==0)11(i%2==l))//判断为整数放进行阶乘操作{intj=(int)i;//强制类型转换intresultNum2=l;for(intk=l;k<=j;k++)resultNum2*=k;result?.setText(String.valueOf(resultNum2));}else{result2.se

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论