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

📄 calculator.java

📁 ★★ ★计算器1.0版★★★★★★★★★★★ 作者:贾真 完成于2008年11月15日 说明:本软件由JAVA语言编写
💻 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 + -