java 学习 ——计算器小程序

来源:互联网 发布:日本女人化妆知乎 编辑:程序博客网 时间:2024/05/16 07:57

简易计算器小程序代码:

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);}}


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 电脑密码忘了怎么办w7旗舰版 笔记本电脑密码忘了怎么办w7 windows一键还原了怎么办 戴尔笔记本电脑键盘没反应怎么办 win10电脑系统盘满了怎么办 win7玩dnf卡死怎么办 cf老是卡住闪退怎么办 w7系统帐户被停用怎么办 海康硬盘录像机密码忘了怎么办 电信合约套餐到期后怎么办 电脑更新系统卡住了怎么办 格力空调显示e1怎么办 ae崩溃了没保存怎么办 电脑下面的状态栏没了怎么办 游戏32位不兼容怎么办 电脑开机dos红屏怎么办 win7进入dos红屏怎么办 手机玩游戏屏幕卡住不动怎么办 魔域英文版换中文版怎么办 党员培养期不足一年怎么办 出生证明日期错了怎么办 毕业生登记表写错了怎么办 高等学校毕业生登记表写错了怎么办 眼睛里迷了东西怎么办 眼睛迷了怎么办小绝招 isf货物离港申报怎么办 非农户口没住房怎么办 在工厂上班很累怎么办 退货运费太贵了怎么办 悬肘写字手抖怎么办 护士成绩合格证明丢了怎么办 找工作真难找好烦怎么办 大夫说身体不适合怀孕有了怎么办 不知道要做什么工作怎么办 红米note4x闪退怎么办 魅蓝note3闪退怎么办 红米note2闪退怎么办 安卓不支持计步怎么办 银行多扣了钱怎么办 网络配置器没了怎么办 班里丢钱了应该怎么办