JAVA实现一个极简的计算器,只实现了 + - × ÷ 功能!
亲测可用!
import java.awt.*;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class calculator extends JFrame implements ActionListener
{
JFrame frame;
JButton button1,button2,button3,button4;
JTextField JTextField1,JTextField2,JTextField3;
JLabel JL1,JL2,JL3;
public static void main(String args[])
{ calculator a = new calculator ();
a.go();
}
public void go()
{
this.setTitle("Calculator"); //窗口设置
this.setSize(200,300);
this.setLayout(new FlowLayout()); //为内容窗格设置FlowLayout布局管理
Container contentPane = this.getContentPane();
JTextField1 = new JTextField(15);
JTextField2 = new JTextField(15);
JTextField3 = new JTextField(15);
JL1 = new JLabel("数字1");
JL2 = new JLabel("数字2");
JL3 = new JLabel("结果");
button1 = new JButton("+"); //添加按钮
button1.addActionListener(this); //事件监听
button2 = new JButton("-");
button2.addActionListener(this);
button3 = new JButton("*");
button3.addActionListener(this);
button4 = new JButton("/");
button4.addActionListener(this);
contentPane.add(JL1); //布局顺序
contentPane.add(JTextField1);
contentPane.add(JL2);
contentPane.add(JTextField2);
contentPane.add(JL3);
contentPane.add(JTextField3);
contentPane.add(button1);
contentPane.add(button2);
contentPane.add(button3);
contentPane.add(button4);
this.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==button1)
{
JTextField3.setText(String.valueOf(Double.parseDouble(JTextField1.getText())+Double.parseDouble(JTextField2.getText())));
}
else if(e.getSource()==button2)
{
JTextField3.setText(String.valueOf(Double.parseDouble(JTextField1.getText())-Double.parseDouble(JTextField2.getText())));
}
else if(e.getSource()==button3)
{
JTextField3.setText(String.valueOf(Double.parseDouble(JTextField1.getText())*Double.parseDouble(JTextField2.getText())));
}
else
{
if(Double.parseDouble(JTextField2.getText())==0.0)
{
JTextField3.setText("除数不能为零");
}
else
JTextField3.setText(String.valueOf(Double.parseDouble(JTextField1.getText())/Double.parseDouble(JTextField2.getText())));
}
}
}