您的位置:首页 > 其它

两个数的运算的简单计算器

2012-07-06 14:44 274 查看



import java.sql.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class TestGui2 {
String number2;
Opertion go;
StringBuffer addString = new StringBuffer();
StringBuffer middleNumber = new StringBuffer();
JFrame frame;
JPanel pane;
JPanel pane2;
JButton equal;
JTextField view;
JButton button1;
JButton button2;
JButton button3;
JButton button4;
JButton button5;
JButton button6;
JButton button7;
JButton button8;
JButton button9;
JButton button0;
JButton buttonAdd;
JButton buttonReduce;
JButton buttonMultiply;
JButton buttonDivide;
JButton buttonClear;
JButton buttonPoint;
JButton buttonPowers;
JButton buttonRoots;
JButton buttonMod;
JMenuBar menuBar;
JMenu menu;
/*
public void saveData(){
Connection con = null;
Statement dataSave = null;
Boolean sqlGo = false;
try{
Class.forName("com.mysql.jdbc.Driver");
}catch(Exception ex){
JOptionPane.showMessageDialog(null,"Loading drive failure,sure your software is full ! ");
}
String url = "jdbc:mysql://localhost:3306/s" ;
String username = "root" ;
String password = "sdk123" ;
try{
con = DriverManager.getConnection(url , username , password ) ;
}catch(SQLException se){
JOptionPane.showMessageDialog(null,"Open database failure,sure your software is full ! ");
}
try {
dataSave = con.createStatement();
//sqlGo = dataSave.execute("insert into `savedata`(`saveString`)values('friends');");
} catch (SQLException e) {
JOptionPane.showMessageDialog(null,"1 Save data failure,sure your software is full ! ");
}
}
*/
public void setGui(){
frame = new JFrame();
view = new JTextField();
equal = new JButton("=");
button1 = new JButton("1");
button2 = new JButton("2");
button3 = new JButton("3");
button4 = new JButton("4");
button5 = new JButton("5");
button6 = new JButton("6");
button7 = new JButton("7");
button8 = new JButton("8");
button9 = new JButton("9");
button0 = new JButton("0");
buttonAdd = new JButton("+");
buttonReduce = new JButton("-");
buttonMultiply = new JButton("x");
buttonDivide = new JButton("/");
buttonClear = new JButton("clear");
buttonPoint = new JButton(".");
buttonPowers = new JButton("pow");
buttonRoots = new JButton("roots");
buttonMod = new JButton("mod");
menuBar = new JMenuBar();
menu = new JMenu("About");
menuBar.add(menu);
pane = new JPanel();
pane2 = new JPanel();
pane2.add(menuBar);
pane2.add(view);
GridLayout layout2 = new GridLayout(2,1);
pane2.setLayout(layout2);
pane.add(button1);
pane.add(button2);
pane.add(button3);
pane.add(button4);
pane.add(button5);
pane.add(button6);
pane.add(button7);
pane.add(button8);
pane.add(button9);
pane.add(button0);
pane.add(buttonAdd);
pane.add(buttonReduce);
pane.add(buttonMultiply);
pane.add(buttonDivide);
pane.add(equal);
pane.add(buttonClear);
pane.add(buttonPoint);
pane.add(buttonPowers);
pane.add(buttonRoots);
pane.add(buttonMod);
GridLayout layout = new GridLayout(5,4);
pane.setLayout(layout);
frame.setTitle("MyCalculater");
frame.getContentPane().add(BorderLayout.NORTH,pane2);
frame.getContentPane().add(BorderLayout.CENTER,pane);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
frame.setSize(300,350);
button1.addActionListener(new Button1Listen());
button2.addActionListener(new Button2Listen());
button3.addActionListener(new Button3Listen());
button4.addActionListener(new Button4Listen());
button5.addActionListener(new Button5Listen());
button6.addActionListener(new Button6Listen());
button7.addActionListener(new Button7Listen());
button8.addActionListener(new Button8Listen());
button9.addActionListener(new Button9Listen());
button0.addActionListener(new Button0Listen());
buttonAdd.addActionListener(new ButtonAddListen());
buttonReduce.addActionListener(new ButtonReduceListen());
buttonClear.addActionListener(new ButtonClearListen());
buttonDivide.addActionListener(new ButtonDivideListen());
buttonMultiply.addActionListener(new ButtonMultiplyListen());
buttonPowers.addActionListener(new ButtonPowersListen());
buttonRoots.addActionListener(new ButtonRootsListen());
buttonMod.addActionListener(new ButtonModListen());
equal.addActionListener(new ButtonEqualListen());
buttonPoint.addActionListener(new ButtonPointListen());
menu.addMenuListener(new MenuListen());

}
class Button1Listen implements ActionListener{
public void actionPerformed(ActionEvent event){
addString.append("1");
view.setText(addString.toString());
if(addString.toString().contains("+") || addString.toString().contains("/") || addString.toString().contains("x") || addString.toString().contains("-") || addString.toString().contains("powers") || addString.toString().contains("mod")){
middleNumber.append("1");
}
}
}
class Button2Listen implements ActionListener{
public void actionPerformed(ActionEvent event){
addString.append("2");
view.setText(addString.toString());
if(addString.toString().contains("+") || addString.toString().contains("/") || addString.toString().contains("x") || addString.toString().contains("-") || addString.toString().contains("powers") || addString.toString().contains("mod")){
middleNumber.append("2");
}
}
}
class Button3Listen implements ActionListener{
public void actionPerformed(ActionEvent event){
addString.append("3");
view.setText(addString.toString());
if(addString.toString().contains("+") || addString.toString().contains("/") || addString.toString().contains("x") || addString.toString().contains("-") || addString.toString().contains("powers") || addString.toString().contains("mod")){
middleNumber.append("3");
}
}
}
class Button4Listen implements ActionListener{
public void actionPerformed(ActionEvent event){
addString.append("4");
view.setText(addString.toString());
if(addString.toString().contains("+") || addString.toString().contains("/") || addString.toString().contains("x") || addString.toString().contains("-") || addString.toString().contains("powers") || addString.toString().contains("mod")){
middleNumber.append("4");
}
}
}
class Button5Listen implements ActionListener{
public void actionPerformed(ActionEvent event){
addString.append("5");
view.setText(addString.toString());
if(addString.toString().contains("+") || addString.toString().contains("/") || addString.toString().contains("x") || addString.toString().contains("-") || addString.toString().contains("powers") || addString.toString().contains("mod")){
middleNumber.append("5");
}
}
}
class Button6Listen implements ActionListener{
public void actionPerformed(ActionEvent event){
addString.append("6");
view.setText(addString.toString());
if(addString.toString().contains("+") || addString.toString().contains("/") || addString.toString().contains("x") || addString.toString().contains("-") || addString.toString().contains("powers") || addString.toString().contains("mod")){
middleNumber.append("6");
}
}
}
class Button7Listen implements ActionListener{
public void actionPerformed(ActionEvent event){
addString.append("7");
view.setText(addString.toString());
if(addString.toString().contains("+") || addString.toString().contains("/") || addString.toString().contains("x") || addString.toString().contains("-") || addString.toString().contains("powers") || addString.toString().contains("mod")){
middleNumber.append("7");
}
}
}
class Button8Listen implements ActionListener{
public void actionPerformed(ActionEvent event){
addString.append("8");
view.setText(addString.toString());
if(addString.toString().contains("+") || addString.toString().contains("/") || addString.toString().contains("x") || addString.toString().contains("-") || addString.toString().contains("powers") || addString.toString().contains("mod")){
middleNumber.append("8");
}
}
}
class Button9Listen implements ActionListener{
public void actionPerformed(ActionEvent event){
addString.append("9");
view.setText(addString.toString());
if(addString.toString().contains("+") || addString.toString().contains("/") || addString.toString().contains("x") || addString.toString().contains("-") || addString.toString().contains("powers") || addString.toString().contains("mod")){
middleNumber.append("9");
}
}
}
class Button0Listen implements ActionListener{
public void actionPerformed(ActionEvent event){
addString.append("0");
view.setText(addString.toString());
if(addString.toString().contains("+") || addString.toString().contains("/") || addString.toString().contains("x") || addString.toString().contains("-") || addString.toString().contains("powers") || addString.toString().contains("mod")){
middleNumber.append("0");
}
}
}
class ButtonAddListen implements ActionListener{
public void actionPerformed(ActionEvent event){
go = new Add();
try{
go.firstNumber = Double.parseDouble(view.getText());
addString.append(" + ");
view.setText(addString.toString());
}catch(Exception ex){
ex.printStackTrace();
view.setText("数据异常,请输入正确的数据!");
}
}
}
class ButtonReduceListen implements ActionListener{
public void actionPerformed(ActionEvent event){
go = new Reduce();
try{
go.firstNumber = Double.parseDouble(view.getText());
addString.append(" - ");
view.setText(addString.toString());
}catch(Exception ex){
ex.printStackTrace();
view.setText("数据异常,请输入正确的数据!");
}
}
}
class ButtonMultiplyListen implements ActionListener{
public void actionPerformed(ActionEvent event){
go = new Multiply();
try{
go.firstNumber = Double.parseDouble(view.getText());
addString.append(" x ");
view.setText(addString.toString());
}catch(Exception ex){
ex.printStackTrace();
view.setText("数据异常,请输入正确的数据!");
}
}
}
class ButtonDivideListen implements ActionListener{
public void actionPerformed(ActionEvent event){
go = new Divide();
try{
go.firstNumber = Double.parseDouble(view.getText());
addString.append(" / ");
view.setText(addString.toString());
}catch(Exception ex){
ex.printStackTrace();
view.setText("数据异常,请输入正确的数据!");
}
}
}
class ButtonClearListen implements ActionListener{
public void actionPerformed(ActionEvent event){
view.setText("");
addString.delete(0, addString.length());
middleNumber.delete(0,middleNumber.length());
}
}
class ButtonEqualListen implements ActionListener{
public void actionPerformed(ActionEvent event){
try{
if(middleNumber.toString().equals("")){
middleNumber.append("0");
}
go.secondNumber = Double.parseDouble(middleNumber.toString());
go.equalNumber = go.opertion(go.firstNumber,go.secondNumber);
addString.append(" = " + "" +go.equalNumber);
view.setText(addString.toString());
}catch(Exception ex){
ex.printStackTrace();
view.setText("数据异常,请输入正确的数据!");
}
}
}
class ButtonPointListen implements ActionListener{
public void actionPerformed(ActionEvent event){
addString.append(".");
view.setText(addString.toString());
if(addString.toString().contains("+") || addString.toString().contains("/") || addString.toString().contains("x") || addString.toString().contains("-") || addString.toString().contains("powers") || addString.toString().contains("mod")){
middleNumber.append(".");
}
}
}
class ButtonPowersListen implements ActionListener{
public void actionPerformed(ActionEvent event){
go = new Powers();
try{
go.firstNumber = Double.parseDouble(view.getText());
addString.append(" powers ");
view.setText(addString.toString());
}catch(Exception ex){
ex.printStackTrace();
view.setText("数据异常,请输入正确的数据!");
}
}
}
class ButtonRootsListen implements ActionListener{
public void actionPerformed(ActionEvent event){
go = new Roots();
try{
go.firstNumber = Double.parseDouble(view.getText());
addString.append(" roots ");
view.setText(addString.toString());
}catch(Exception ex){
ex.printStackTrace();
view.setText("数据异常,请输入正确的数据!");
}
}
}
class ButtonModListen implements ActionListener{
public void actionPerformed(ActionEvent event){
go = new Mod();
try{
go.firstNumber = Double.parseDouble(view.getText());
addString.append(" mod ");
view.setText(addString.toString());
}catch(Exception ex){
ex.printStackTrace();
view.setText("数据异常,请输入正确的数据!");
}
}
}
class MenuListen implements MenuListener{
public void menuSelected(MenuEvent e){
JOptionPane.showMessageDialog(null,"Thanks for you to use MyCalculater. By HuangYangyang");
}

public void menuCanceled(MenuEvent e) {

}
public void menuDeselected(MenuEvent e) {

}
}
public static void main(String [] args){
TestGui2 to = new TestGui2();
to.setGui();
}
}
class Opertion{
double firstNumber;
double secondNumber;
double equalNumber;
public double opertion(double first,double second ){
return 0;
}
}
class Add extends Opertion{
public double opertion(double first,double second ){
firstNumber = first;
secondNumber = second;
equalNumber = firstNumber + secondNumber;
return equalNumber;
}
}
class Divide extends Opertion{
public double opertion(double first,double second ){
firstNumber = first;
secondNumber = second;
equalNumber = firstNumber / (int)secondNumber;
return equalNumber;
}
}
class Reduce extends Opertion{
public double opertion(double first,double second ){
firstNumber = first;
secondNumber = second;
equalNumber = firstNumber - secondNumber;
return equalNumber;
}
}
class Multiply extends Opertion{
public double opertion(double first,double second ){
firstNumber = first;
secondNumber = second;
equalNumber = firstNumber * secondNumber;
return equalNumber;
}
}
class Powers extends Opertion{
public double opertion(double first,double second){
firstNumber = first;
secondNumber = second;
equalNumber = Math.pow(firstNumber, secondNumber);
return equalNumber;
}
}
class Roots extends Opertion{
public double opertion(double first,double second){
firstNumber = first;
secondNumber = second;
equalNumber = Math.cbrt(firstNumber);
return equalNumber;
}
}
class Mod extends Opertion{
public double opertion(double first,double second){
firstNumber = first;
secondNumber = second;
equalNumber = Math.IEEEremainder(firstNumber,secondNumber);
if(firstNumber > secondNumber){
equalNumber = 0 - equalNumber;
}
return equalNumber;
}
}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: