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

📄 jsq.java

📁 功能强大的计算器
💻 JAVA
字号:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class MyApp extends JFrame//定义主类 MyApp
implements ActionListener//接口继承 常用事件处理
{ 
JButton Button_Add=new JButton("+"); //定义按钮“+”
JButton Button_Del=new JButton("-"); //定义按钮"-"
JButton Button_Div=new JButton("/"); //定义按钮"/"
JButton Button_Mul=new JButton("*"); //定义按钮"*"
JButton Button_Equ=new JButton("="); //定义按钮"="

JTextField TextField=new JTextField(10);//创建输入单行文本区域对象
JPanel Panel=new JPanel();
float Left,Right,Result;     //保存数值
int Type;//运算类型标示
int temp;
//super("北京工业大学 实验学院 计算机科学与技术系  计算器 00507307 曾毅");

public void actionPerformed(ActionEvent e)//对用户输入做出响应
{
  if(e.getSource()==Button_Add)
{ 
  Left=Float.parseFloat(TextField.getText());  //保存第一操作数
  TextField.setText("");//窗口内容重填
   Type=1;
}  
if(e.getSource()==Button_Equ)
{
  switch(Type)
  { 
  case 1:
  Right=Float.parseFloat(TextField.getText());//保存第二操作数
  Result=Left+Right;   //计算结果
  temp=(int)Result;
   if((float)temp==Result)
     TextField.setText(Integer.toString(temp));
     else 
  TextField.setText(Float.toString(Result));//输出结果
  break;
  case 2:
  Right=Float.parseFloat(TextField.getText());//保存第二操作数
  Result=Left-Right;   //计算结果
   temp=(int)Result;
   if((float)temp==Result)
     TextField.setText(Integer.toString(temp));
     else 
  TextField.setText(Float.toString(Result));//输出结果
  break;
  case 3:
  Right=Float.parseFloat(TextField.getText());//保存第二操作数
  Result=Left*Right;   //计算结果
   temp=(int)Result;    
   if((float)temp==Result)   //判断浮点数是否可以直接转换为整形数
     TextField.setText(Integer.toString(temp));
     else 
  TextField.setText(Float.toString(Result));//输出结果
  break;
  case 4:
  Right=Float.parseFloat(TextField.getText());//保存第二操作数
   Result=Left/Right;   //计算结果
    temp=(int)Result;
   if((float)temp==Result)
     TextField.setText(Integer.toString(temp));
     else 
  TextField.setText(Float.toString(Result));//输出结果
  
    break;
     }
}
if(e.getSource()==Button_Del)
{ 
  Left=Float.parseFloat(TextField.getText());  //保存第一操作数
  TextField.setText("");//窗口内容重填
   Type=2;
}  
    if(e.getSource()==Button_Mul)
{ 
  Left=Float.parseFloat(TextField.getText());  //保存第一操作数
  TextField.setText("");//窗口内容重填
   Type=3;
}  
       if(e.getSource()==Button_Div)
{ 
  Left=Float.parseFloat(TextField.getText());  //保存第一操作数
  TextField.setText("");//窗口内容重填
   Type=4;
}  
    
} 
public MyApp()//对对象初始化
{  
   super("北京工业大学 实验学院 计算机科学与技术系  四则运算计算器 00507307 曾毅");
this.addWindowListener (new WindowAdapter(){
public void windowClosing(WindowEvent e){
dispose();
System.exit(0);
}
}); 
Button_Add.addActionListener(this);//事件监听
Button_Del.addActionListener(this);//事件监听
      Button_Div.addActionListener(this);//事件监听
      Button_Mul.addActionListener(this);//事件监听
           Panel.setLayout(new FlowLayout());//流水式布局风格
Panel.add(Button_Add);//将Button_Add加入窗口
Panel.add(Button_Del);//将Button_Del加入窗口
Panel.add(Button_Div);//将Button_Div加入窗口
Panel.add(Button_Mul);//将Button_Mut加入窗口
Button_Equ.addActionListener(this);//事件监听
Panel.add(Button_Equ);//将Button_Equ加入窗口
Panel.add(TextField);//将TextField加入窗口
getContentPane().add(Panel);//将Panel加入窗口


}

public static void main(String args[])//定义主类中的main方法
{
System.out.println("Starting App");
MyApp f = new MyApp();
f.setSize(650,150);

f.show();
}
}

⌨️ 快捷键说明

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