⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 calculator.txt

📁 利用JAVA实现了计算器的基本功能,有界面编辑
💻 TXT
字号:
import java.awt.*;
import java.awt.event.*;

public class Calculator {
 int tmp,sum,sum1,sum2=1,sum3=1;
 String a,b,c,d;String s = "";
 /**tmp变量存放与Button动作相关的命令字符串的Ingeter值;
 * sum变量存放加法操作的值;
 *sum1变量存放减法操作的值;
 *sum2变量存放乘法操作的值;
 *sum3变量存放除法操作的值;
 */
 
 Frame f= new Frame("My Calculator");
 
 private String [] name = {"0","1","2","3","4","5","6","7","8","9","+","-","*","/","=","space"};
 public Button [] button = new Button[name.length];
 
 TextField t = new TextField("",30);
 
 Panel p = new Panel();
 Panel p1 = new Panel();
 Color color = new Color(100,170,90);
 /**
 *内部类class WindowClose实现关闭窗口的WindowClosing方法;
 *内部类ButtonEvent1实现给所有Button 对象的AcctionPerformed方法;
 *
 */
 


public Calculator() {
 p1.setLayout(new GridLayout(5,5));
 for (int i = 0;i<name.length;i++){
 
 button[i] = new Button(name[i]);
 p1.add(button[i]);
 
 }
  p.setLayout(new FlowLayout(FlowLayout.LEFT));
  p.setBackground(color);
  p.add(t);
  f.add(p,BorderLayout.NORTH);
  f.add(p1,BorderLayout.SOUTH); 
  f.pack();
  f.setVisible(true); 
  f.addWindowListener(new WindowClose());
  t.setText("0.");
  
  
  for(int i = 0;i<name.length;i++){
  button[i].addActionListener(new ButtonEvent1());
  
 }
 
}
public static void main(String [] args){
 Calculator c = new Calculator(); 
}
class WindowClose extends WindowAdapter{
 public void windowClosing(WindowEvent e){
 System.exit(0);
 }

} 
class ButtonEvent1 implements ActionListener {
/**
*getActionCommand()方法返回与动作相关的字符串;
*setText(String a)改变文本对象显示内容;
*getText()获得文本对象显示的内容;
*Integer.parseInt(String a)把字符串变成整型数据;
*/

public void actionPerformed(ActionEvent e) throws ArithmeticException{
 String command = e.getActionCommand();
 
 if(command.equals("+")){
  sum = Integer.parseInt(t.getText())+sum;
  t.setText(String.valueOf(sum));
  a = t.getText();
  s= ""; 
 }
 else if(command.equals("-")){
  sum1 = Integer.parseInt(t.getText());
  
  b = t.getText();
  s= ""; 
 }
 else if(command.equals("*")){
  sum2 = Integer.parseInt(t.getText())*sum2;
  t.setText(String.valueOf(sum2));
  c = t.getText();
  s=""; 
 }
 else if(command.equals("/")){
 
  sum3=Integer.parseInt(t.getText());
  
  
  d = t.getText();
  s="";
 }
 
 else if(command.equals("=")){
 if(a!=null){
  t.setText(String.valueOf(sum+tmp));}
 if(b!=null){
  t.setText(String.valueOf(sum1-tmp));}
 if(c!=null){
  t.setText(String.valueOf(sum2*tmp));}
 
 try{ 
  if(d!=null){
  t.setText(String.valueOf(sum3/tmp));}
 }
 catch(ArithmeticException a){
 
  t.setText("除数不能为零"); 
 
 }
 }


 else if(command.equals("space")){
   sum =0;
   a = null;
   b = null;
   c = null;
   d = null;
   sum1 = 0;
   sum2 = 1;
   sum3 = 1;
   tmp = 0;
   t.setText("0.");
   s="";
  } 
  else{
  
   s = s + command;
   t.setText(s);
   //tmp = Integer.valueOf(command).intValue();
   tmp = Integer.parseInt(s);
  } 
  
  
  }
 } 
} 
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -