简单计算器

package event;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class Counter { 
     private JFrame frame=new JFrame("Counter");
     private Container con=frame.getContentPane();
     private JTextField  txt=new JTextField(15);
     private JPanel pan=new JPanel();
     private JButton button7=new JButton("7");
     private JButton button8=new JButton("8");
     private JButton button9=new JButton("9");
     private JButton button11=new JButton("+");
     private JButton button4=new JButton("4");
     private JButton button5=new JButton("5");
     private JButton button6=new JButton("6");
     private JButton button12=new JButton("-");
     private JButton button1=new JButton("1");
     private JButton button2=new JButton("2");
     private JButton button3=new JButton("3");
     private JButton button13=new JButton("*");
     private JButton button0=new JButton("0");
     private JButton button=new JButton(".");
     private JButton button14=new JButton("/");
     private JButton button15=new JButton("=");
     private JButton but=new JButton("清零");
     private JButton but1=new JButton("%");
     private JButton but2=new JButton("开方");
     private JButton but3=new JButton("退出");
     public String m=new String();
    

 void go(){
   frame.add(txt,BorderLayout.NORTH);
      pan.setLayout(new GridLayout(5,4));
  
   pan.add(button7);
   pan.add(button8);
   pan.add(button9);
   pan.add(button11);
   pan.add(button4);
   pan.add(button5);
   pan.add(button6);
   pan.add(button12);
   pan.add(button1);
   pan.add(button2);
   pan.add(button3);
   pan.add(button13);
   pan.add(button0);
   pan.add(button);
   pan.add(button14);
   pan.add(button15);
   pan.add(but);
   pan.add(but1);
   pan.add(but2);
   pan.add(but3);
   pan.setSize(300, 300);
   con.add(pan,BorderLayout.SOUTH);
  

   button0.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      m=m.concat("0") ;txt.setText(m);
     } // 判断是否是按钮
    }
   }) ;
   button1.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      m=m.concat("1");txt.setText(m);
     }
    }
   });
   button2.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      m=m.concat("2");txt.setText(m);
     }
    }
   });
   button3.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      m=m.concat("3");txt.setText(m);
     }
    }
   });
   button4.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      m=m.concat("4");txt.setText(m);
     }
    }
   });
   button5.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      m=m.concat("5");txt.setText(m);
     }
    }
   });
   button6.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      m=m.concat("6");txt.setText(m);
     }
    }
   });
   button7.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      m=m.concat("7");txt.setText(m);
     }
    }
   });
   button8.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      m=m.concat("8");txt.setText(m);
     }
    }
   });
   button9.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      m=m.concat("9");txt.setText(m);
     }
    }
   });
   button11.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      m=m.concat("+");txt.setText(m);
     }
    }
   });
   button12.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      m=m.concat("-");txt.setText(m);
     }
    }
   });
   button13.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      m=m.concat("*");txt.setText(m);
     }
    }
   });
   button14.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      m=m.concat("/");txt.setText(m);
     }
    }
   });
   button.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      m=m.concat(".");txt.setText(m);
     }
    }
   });
   but.addActionListener(new ActionListener(){//清零
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
     m="";txt.setText(m);
     }
    }
   });
   but1.addActionListener(new ActionListener(){//求余
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      m=m.concat("%");txt.setText(m);
     }
    }
   });
   but2.addActionListener(new ActionListener(){//开方
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      double a=Float.valueOf(m);
      a=Math.sqrt(a);
      txt.setText(String.valueOf(a));
     }
    }
   });
   but3.addActionListener(new ActionListener(){//退出
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
      System.exit(1);
     }
    }
   });
   button15.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
     if(e.getSource() instanceof JButton){
     calculator(m) ;
     }
    }
   });
    
   frame.setLocation(400, 300);
   frame.pack();
   frame.setVisible(true);
 }
 public void calculator(String args){
   int p1=m.indexOf("+");
   int p2=m.indexOf("-");
   int p3=m.indexOf("*");
   int p4=m.indexOf("/");
   int p5=m.indexOf("%");
   int p=0;
   if(p1!=-1){p=p1;}
   else if(p2!=-1){p=p2;}
   else if(p3!=-1){p=p3;}
   else if(p4!=-1){p=p4;}
   else if(p5!=-1){p=p5;}
   String s1=m.substring(0, p);
   String s2=m.substring(p+1);
   String ch=m.substring(p,p+1);
   float m1=Float.valueOf(s1);
   float m2=Float.valueOf(s2);
   float sum=0;
   if(ch.endsWith("+")){
    sum=m1+m2;
   }
   if(ch.endsWith("-")){
    sum=m1-m2;
   }
   if(ch.endsWith("*")){
    sum=m1*m2;
   }
   if(ch.endsWith("/")){
    sum=m1/m2;
   }
   if(ch.endsWith("%")){
    sum=m1%m2;
   }
   String sm=String.valueOf(sum);
   txt.setText(sm);  
  }  
 public static void main(String args[]){
  Counter c=new Counter();
  c.go();
 }
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值