📄 calculator.java
字号:
package 计算器;
import javax.swing.SwingUtilities;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JTextField;
import java.awt.Rectangle;
import javax.swing.JButton;
import javax.swing.UIManager;
public class Calculator extends JFrame {
public float a[]=new float[50];
public int i=1,f,d;
public float j,b,c;
private static final long serialVersionUID = 1L;
private JPanel jContentPane = null;
private JTextField jTextField = null;
private JButton jButton = null;
private JButton jButton1 = null;
private JButton jButton2 = null;
private JButton jButton3 = null;
private JButton jButton4 = null;
private JButton jButton5 = null;
private JButton jButton6 = null;
private JButton jButton7 = null;
private JButton jButton8 = null;
private JButton jButton9 = null;
private JButton jButton10 = null;
private JButton jButton11 = null;
private JButton jButton12 = null;
private JButton jButton13 = null;
private JButton jButton14 = null;
private JButton jButton15 = null;
/**
* This method initializes jTextField
*
* @return javax.swing.JTextField
*/
private JTextField getJTextField() {
if (jTextField == null) {
jTextField = new JTextField();
jTextField.setBounds(new Rectangle(32, 18, 255, 28));
jTextField.setHorizontalAlignment(JTextField.RIGHT);
}
return jTextField;
}
/**
* This method initializes jButton
*
* @return javax.swing.JButton
*/
private JButton getJButton() {
if (jButton == null) {
jButton = new JButton();
jButton.setBounds(new Rectangle(30, 60, 50, 25));
jButton.setText("1");
jButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
B();
jTextField.setText(jTextField.getText()+jButton.getText());
a[i]=1;
i++;
}
});
}
return jButton;
}
/**
* This method initializes jButton1
*
* @return javax.swing.JButton
*/
private JButton getJButton1() {
if (jButton1 == null) {
jButton1 = new JButton();
jButton1.setBounds(new Rectangle(100, 60, 50, 25));
jButton1.setText("2");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
B();
jTextField.setText(jTextField.getText()+jButton1.getText());
a[i]=2;
i++;
}
});
}
return jButton1;
}
/**
* This method initializes jButton2
*
* @return javax.swing.JButton
*/
private JButton getJButton2() {
if (jButton2 == null) {
jButton2 = new JButton();
jButton2.setBounds(new Rectangle(170, 60, 50, 25));
jButton2.setText("3");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
B();
jTextField.setText(jTextField.getText()+jButton2.getText());
a[i]=3;
i++;
}
});
}
return jButton2;
}
/**
* This method initializes jButton3
*
* @return javax.swing.JButton
*/
private JButton getJButton3() {
if (jButton3 == null) {
jButton3 = new JButton();
jButton3.setBounds(new Rectangle(240, 60, 50, 25));
jButton3.setText("+");
jButton3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
if(d!=0||i==1)
{
jTextField.setText("操作错误!");
d=5;
}
else
{jTextField.setText(jTextField.getText()+jButton3.getText());
d=1;
b=A(i);}
for(f=0;f<=10;f++)
{
a[f]=0;
}
i=1;
}
});
}
return jButton3;
}
/**
* This method initializes jButton4
*
* @return javax.swing.JButton
*/
private JButton getJButton4() {
if (jButton4 == null) {
jButton4 = new JButton();
jButton4.setBounds(new Rectangle(30, 100, 50, 25));
jButton4.setText("4");
jButton4.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
B();
jTextField.setText(jTextField.getText()+jButton4.getText());
a[i]=4;
i++;
}
});
}
return jButton4;
}
/**
* This method initializes jButton5
*
* @return javax.swing.JButton
*/
private JButton getJButton5() {
if (jButton5 == null) {
jButton5 = new JButton();
jButton5.setBounds(new Rectangle(100, 100, 50, 25));
jButton5.setText("5");
jButton5.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
B();
jTextField.setText(jTextField.getText()+jButton5.getText());
a[i]=5;
i++;
}
});
}
return jButton5;
}
/**
* This method initializes jButton6
*
* @return javax.swing.JButton
*/
private JButton getJButton6() {
if (jButton6 == null) {
jButton6 = new JButton();
jButton6.setBounds(new Rectangle(170, 100, 50, 25));
jButton6.setText("6");
jButton6.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
B();
jTextField.setText(jTextField.getText()+jButton6.getText());
a[i]=6;
i++;
}
});
}
return jButton6;
}
/**
* This method initializes jButton7
*
* @return javax.swing.JButton
*/
private JButton getJButton7() {
if (jButton7 == null) {
jButton7 = new JButton();
jButton7.setBounds(new Rectangle(240, 100, 50, 25));
jButton7.setText("-");
jButton7.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
if(d!=0||i==1)
{
jTextField.setText("操作错误!");
d=5;
}
else
{jTextField.setText(jTextField.getText()+jButton7.getText());
d=2;
b=A(i);}
for(f=0;f<=10;f++)
{
a[f]=0;
}
i=1;
}
});
}
return jButton7;
}
/**
* This method initializes jButton8
*
* @return javax.swing.JButton
*/
private JButton getJButton8() {
if (jButton8 == null) {
jButton8 = new JButton();
jButton8.setBounds(new Rectangle(30, 140, 50, 25));
jButton8.setText("7");
jButton8.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
B();
jTextField.setText(jTextField.getText()+jButton8.getText());
a[i]=7;
i++;
}
});
}
return jButton8;
}
/**
* This method initializes jButton9
*
* @return javax.swing.JButton
*/
private JButton getJButton9() {
if (jButton9 == null) {
jButton9 = new JButton();
jButton9.setBounds(new Rectangle(100, 140, 50, 25));
jButton9.setText("8");
jButton9.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
B();
jTextField.setText(jTextField.getText()+jButton9.getText());
a[i]=8;
i++;
}
});
}
return jButton9;
}
/**
* This method initializes jButton10
*
* @return javax.swing.JButton
*/
private JButton getJButton10() {
if (jButton10 == null) {
jButton10 = new JButton();
jButton10.setBounds(new Rectangle(170, 140, 50, 25));
jButton10.setText("9");
jButton10.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
B();
jTextField.setText(jTextField.getText()+jButton10.getText());
a[i]=9;
i++;
}
});
}
return jButton10;
}
/**
* This method initializes jButton11
*
* @return javax.swing.JButton
*/
private JButton getJButton11() {
if (jButton11 == null) {
jButton11 = new JButton();
jButton11.setBounds(new Rectangle(240, 140, 50, 25));
jButton11.setText("*");
jButton11.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
if(d!=0||i==1)
{
jTextField.setText("操作错误!");
d=5;
}
else
{jTextField.setText(jTextField.getText()+jButton11.getText());
d=3;
b=A(i);}
for(f=0;f<=10;f++)
{
a[f]=0;
}
i=1;
}
});
}
return jButton11;
}
/**
* This method initializes jButton12
*
* @return javax.swing.JButton
*/
private JButton getJButton12() {
if (jButton12 == null) {
jButton12 = new JButton();
jButton12.setBounds(new Rectangle(30, 180, 50, 25));
jButton12.setText("0");
jButton12.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
B();
if(i==1)
{
jTextField.setText("");
jTextField.setText("操作错误!");
d=5;
}
else
{
jTextField.setText(jTextField.getText()+jButton12.getText());
a[i]=0;
i++;
}
}
});
}
return jButton12;
}
/**
* This method initializes jButton13
*
* @return javax.swing.JButton
*/
private JButton getJButton13() {
if (jButton13 == null) {
jButton13 = new JButton();
jButton13.setBounds(new Rectangle(100, 180, 50, 25));
jButton13.setText("c");
jButton13.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
for(f=0;f<10;f++)
{
a[f]=0;
}
i=1;
d=0;
jTextField.setText("");
}
});
}
return jButton13;
}
/**
* This method initializes jButton14
*
* @return javax.swing.JButton
*/
private JButton getJButton14() {
if (jButton14 == null) {
jButton14 = new JButton();
jButton14.setBounds(new Rectangle(170, 180, 50, 25));
jButton14.setText("=");
jButton14.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
c=A(i);
switch(d)
{
case 1:
if((b+c)>999999999)
{
jTextField.setText("溢出!");
d=5;
}
else
jTextField.setText(String.valueOf(b+c));
break;
case 2:
if((b-c)<=-9999999||(b-c)>999999999)
{
jTextField.setText("溢出!");
d=5;
}
else
jTextField.setText(String.valueOf(b-c));
break;
case 3:
if((b*c)>999999999)
{
jTextField.setText("溢出!");
d=5;
}
else
jTextField.setText(String.valueOf(b*c));
break;
case 4:
if(c==0)
{
jTextField.setText("溢出!");
d=5;
}
else
jTextField.setText(String.valueOf(b/c));
break;
}
d=5;
}
});
}
return jButton14;
}
/**
* This method initializes jButton15
*
* @return javax.swing.JButton
*/
private JButton getJButton15() {
if (jButton15 == null) {
jButton15 = new JButton();
jButton15.setBounds(new Rectangle(240, 180, 50, 25));
jButton15.setText("/");
jButton15.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
if(d!=0||i==1)
{
jTextField.setText("操作错误!");
d=5;
}
else
{jTextField.setText(jTextField.getText()+jButton15.getText());
d=4;
b=A(i);}
for(f=0;f<=10;f++)
{
a[f]=0;
}
i=1;
}
});
}
return jButton15;
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
SwingUtilities.invokeLater(new Runnable() {
public void run() {
Calculator thisClass = new Calculator();
thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
thisClass.setVisible(true);
}
});
}
/**
* This is the default constructor
*/
public Calculator() {
super();
initialize();
}
/**
* This method initializes this
*
* @return void
*/
private void initialize() {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) {
// TODO: handle exception
}
this.setSize(323, 245);
this.setContentPane(getJContentPane());
this.setTitle("计算器1.0");
}
/**
* This method initializes jContentPane
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane() {
if (jContentPane == null) {
jContentPane = new JPanel();
jContentPane.setLayout(null);
jContentPane.add(getJTextField(), null);
jContentPane.add(getJButton(), null);
jContentPane.add(getJButton1(), null);
jContentPane.add(getJButton2(), null);
jContentPane.add(getJButton3(), null);
jContentPane.add(getJButton4(), null);
jContentPane.add(getJButton5(), null);
jContentPane.add(getJButton6(), null);
jContentPane.add(getJButton7(), null);
jContentPane.add(getJButton8(), null);
jContentPane.add(getJButton9(), null);
jContentPane.add(getJButton10(), null);
jContentPane.add(getJButton11(), null);
jContentPane.add(getJButton12(), null);
jContentPane.add(getJButton13(), null);
jContentPane.add(getJButton14(), null);
jContentPane.add(getJButton15(), null);
}
return jContentPane;
}
public float A(float e)
{
if(e==2)
j=a[1];
if(e==3)
j=a[1]*10+a[2];
if(e==4)
j=a[1]*100+a[2]*10+a[3];
if(e==5)
j=a[1]*1000+a[2]*100+a[3]*10+a[4];
if(e==6)
j=a[1]*10000+a[2]*1000+a[3]*100+a[4]*10+a[5];
if(e==7)
j=a[1]*100000+a[2]*10000+a[3]*1000+a[4]*100+a[5]*10+a[6];
if(e==8)
j=a[1]*1000000+a[2]*100000+a[3]*10000+a[4]*1000+a[5]*100+a[6]*10+a[7];
if(e==9)
j=a[1]*10000000+a[2]*1000000+a[3]*100000+a[4]*10000+a[5]*1000+a[6]*100+a[7]*10+a[8];
if(e==10)
j=a[1]*100000000+a[2]*10000000+a[3]*1000000+a[4]*100000+a[5]*10000+a[6]*1000+a[7]*100+a[8]*10+a[9];
if(e>10)
{
jTextField.setText("只能计算9位数!");
d=5;
}
return j;
}
public void B()
{
if(d==5)
{
for(f=0;f<10;f++)
{
a[f]=0;
}
i=1;
d=0;
jTextField.setText("");
}
}
} // @jve:decl-index=0:visual-constraint="15,11"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -