java 學習 ——計算機小程式

來源:互聯網
上載者:User

標籤:java   計算機   原始碼   

簡易計算機小程式代碼:

package jisuanqi;//聲明需要插入的包import java.awt.*;import java.lang.Object;import java.lang.String;import javax.swing.*;import java.awt.event.*;import java.awt.TextComponent;//聲明一個主類jisuanqi,繼續視窗類別Framepublic class jisuanqi extends Frame{//聲明16個ButtonButton anjian1, anjian2, anjian3, anjian4, anjian5, anjian6, anjian7, anjian8, anjian9, anjian10, anjian11, anjian12, anjian13, anjian14,anjian15,anjian16;//聲明文字框,用於接收數字和計算TextField numText;//聲明面板容器,用於存放各種按鈕Panel anjianPanel;//構造方法初始化按鈕jisuanqi(String title){super(title);anjian1=new Button("0");anjian2=new Button("1");anjian3=new Button("2");anjian4=new Button("3");anjian5=new Button("4");anjian6=new Button("5");anjian7=new Button("6");anjian8=new Button("7");anjian9=new Button("8");anjian10=new Button("9");anjian11=new Button("+");anjian12=new Button("-");anjian13=new Button("*");anjian14=new Button("/");anjian15=new Button("=");anjian16=new Button("清空");//初始化文字框,將文本的值設定為“0”numText=new TextField("0");//執行個體化面板;anjianPanel=new Panel();//設定按鈕anjianPanel.setLayout(new FlowLayout());//執行個體化按鈕anjian1.addActionListener(new anjianAction());anjian2.addActionListener(new anjianAction());anjian3.addActionListener(new anjianAction());anjian4.addActionListener(new anjianAction());anjian5.addActionListener(new anjianAction());anjian6.addActionListener(new anjianAction());anjian7.addActionListener(new anjianAction());anjian8.addActionListener(new anjianAction());anjian9.addActionListener(new anjianAction());anjian10.addActionListener(new anjianAction());anjian11.addActionListener(new anjianAction());anjian12.addActionListener(new anjianAction());anjian13.addActionListener(new anjianAction());anjian14.addActionListener(new anjianAction());anjian15.addActionListener(new anjianAction());anjian16.addActionListener(new anjianAction());//將各個按鈕添加到面板容器中anjianPanel.add(anjian1);anjianPanel.add(anjian2);anjianPanel.add(anjian3);anjianPanel.add(anjian4);anjianPanel.add(anjian5);anjianPanel.add(anjian6);anjianPanel.add(anjian7);anjianPanel.add(anjian8);anjianPanel.add(anjian9);anjianPanel.add(anjian10);anjianPanel.add(anjian11);anjianPanel.add(anjian12);anjianPanel.add(anjian13);anjianPanel.add(anjian14);anjianPanel.add(anjian15);anjianPanel.add(anjian16);//為文字框添加事件numText.addTextListener(new TextListener() {public void textValueChanged(TextEvent e) {if(numText.getText().indexOf("0",0)!=-1){numText.getText().replace("0","");}}});addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent e) {System.exit(0);}});//將文字框放置在頂部add(numText,BorderLayout.NORTH);//添加按鈕add(anjianPanel,BorderLayout.CENTER);//設定文字框屬性numText.setEditable(false);}//沒有任何操作的值int num=0;//numStr是文字框的值String numStr=null;Boolean chinage=false;//設定按鈕public int check(){numStr = numText.getText();if (numStr.indexOf("+") == 0) {numStr = numStr.replace('+', '0');num = num + Integer.parseInt(numStr);return num;}else if (numStr.indexOf("-") != -1) {numStr = numStr.replace("-", "0");num = num - Integer.parseInt(numStr);return num;}else if(numStr.indexOf("*")!=-1){numStr=numStr.replace('*','0');num = num * Integer.parseInt(numStr);return num;}else if(numStr.indexOf("/")!=-1){numStr=numStr.replace('/','0');try{num = num / Integer.parseInt(numStr);return num;}catch(ArithmeticException e){JOptionPane.showMessageDialog(null,"除數不可為空!","訊息!",1);return num;}}else return num=Integer.parseInt(numStr);}//建立事件private class anjianAction implements ActionListener{public void actionPerformed(ActionEvent event){if(event.getActionCommand()=="0"){if(!numText.getText().equals("0"))numText.setText(numText.getText()+0);}if(event.getActionCommand()=="1")numText.setText(numText.getText()+1);if(event.getActionCommand()=="2")numText.setText(numText.getText()+2);if(event.getActionCommand()=="3")numText.setText(numText.getText()+3);if(event.getActionCommand()=="4")numText.setText(numText.getText()+4);if(event.getActionCommand()=="5")numText.setText(numText.getText()+5);if(event.getActionCommand()=="6")numText.setText(numText.getText()+6);if(event.getActionCommand()=="7")numText.setText(numText.getText()+7);if(event.getActionCommand()=="8")numText.setText(numText.getText()+8);if(event.getActionCommand()=="9")numText.setText(numText.getText()+9);if(event.getActionCommand()=="清空"){numText.setText("0");num=0;}if(event.getActionCommand()=="+"){//調用check();方法check();numText.setText("+");}if(event.getActionCommand()=="-"){check();numText.setText("-");}if(event.getActionCommand()=="*"){check();numText.setText("*");}if(event.getActionCommand()=="/"){if(numStr=="/0"){JOptionPane.showMessageDialog(null,"除數不可為空!","訊息!",1);}check();numText.setText("/");}if(event.getActionCommand()=="="){check();numText.setText(""+num);}}}public static void main(String[] args){jisuanqi jisuanqi=new jisuanqi("計算機");jisuanqi.setBackground(Color.CYAN);jisuanqi.setSize(300,280);//設定視窗大小jisuanqi.setLocation(550,350);//設定介面屬性jisuanqi.setVisible(true);}}


著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

java 學習 ——計算機小程式

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.