java 简单的计算器程序实例代码
java简单的计算器程序
实现实例:
importjava.awt.*; importjava.awt.event.*; importjavax.swing.*; publicclassCalculator { publicstaticvoidmain(String[]args) { EventQueue.invokeLater(newRunnable() { publicvoidrun() { CalculatorFrameframe=newCalculatorFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } }); } } /** *Aframewithacalculatorpanel. */ classCalculatorFrameextendsJFrame { publicCalculatorFrame() { setTitle("Calculator"); CalculatorPanelpanel=newCalculatorPanel(); add(panel); pack(); } } classCalculatorPanelextendsJPanel { privateJButtondisplay; privateJPanelpanel; privatedoubleresult; privateStringlastCommand; privatebooleanstart; publicCalculatorPanel() { setLayout(newBorderLayout()); result=0; lastCommand="="; start=true; //addthedisplay display=newJButton("0"); display.setEnabled(false); add(display,BorderLayout.NORTH); ActionListenerinsert=newInsertAction(); ActionListenercommand=newCommandAction(); panel=newJPanel(); panel.setLayout(newGridLayout(4,4)); addButton("7",insert); addButton("8",insert); addButton("9",insert); addButton("/",command); addButton("4",insert); addButton("5",insert); addButton("6",insert); addButton("*",command); addButton("1",insert); addButton("2",insert); addButton("3",insert); addButton("-",command); addButton("0",insert); addButton(".",insert); addButton("=",command); addButton("+",command); add(panel,BorderLayout.CENTER); } privatevoidaddButton(Stringlabel,ActionListenerlistener) { JButtonbutton=newJButton(label); button.addActionListener(listener); panel.add(button); } /** *Thisactioninsertsthebuttonactionstringtotheendofthedisplaytext. */ privateclassInsertActionimplementsActionListener { publicvoidactionPerformed(ActionEventevent) { Stringinput=event.getActionCommand(); if(start) { display.setText(""); start=false; } display.setText(display.getText()+input); } } /** *Thisactionexecutesthecommandthatthebuttonactionstringdenotes. */ privateclassCommandActionimplementsActionListener { publicvoidactionPerformed(ActionEventevent) { Stringcommand=event.getActionCommand(); if(start) { if(command.equals("-")) { display.setText(command); start=false; } elselastCommand=command; }else{ calculate(Double.parseDouble(display.getText())); lastCommand=command; start=true; } } } /** *Carriesoutthependingcalculation. *@paramxthevaluetobeaccumulatedwiththepriorresult. */ publicvoidcalculate(doublex) { if(lastCommand.equals("+"))result+=x; elseif(lastCommand.equals("-"))result-=x; elseif(lastCommand.equals("*"))result*=x; elseif(lastCommand.equals("/"))result/=x; elseif(lastCommand.equals("="))result=x; display.setText(""+result); } }
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!