利用AWT编写一个简易计算器

1 篇文章 0 订阅
1 篇文章 0 订阅
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;

public class Caculator extends Applet implements ActionListener {
	// Label head=new Label("简易计算器");
	TextField input = new TextField(20);
	String str;
	int flag;
	double num1, num2, result;

	// public void itemStateChanged(ItemEvent e) {

	// }
	public void init() {
		// add(head);
		String buttons_name[] = { "1", "2", "3", "+", "4", "5", "6", "-", "7",
				"8", "9", "0", "*", "/", "清空", "=" };
		str = "";
		Panel text = new Panel();
		text.setLayout(new FlowLayout());
		input.addActionListener(this);
		text.add(input);

		Panel buttons = new Panel();
		buttons.setLayout(new GridLayout(4, 4, 5, 5));
		Button btn[] = new Button[buttons_name.length];
		for (int i = 0; i < btn.length; i++) {

			btn[i] = new Button(buttons_name[i]);
			btn[i].setBackground(Color.pink);
			buttons.add(btn[i]);

			btn[i].addActionListener(this);

		}

		setLayout(new BorderLayout());
		// add("North",f);
		add("Center", text);
		add("South", buttons);
		// input.setText("0");
		setSize(250, 200);
	}

	public void actionPerformed(ActionEvent e) {
		if (e.getActionCommand().equals("0")) {
			if (str != "") {
				str = str + "0";
				input.setText(str);
			} else {
				input.setText(str);
			}
		}
		String s = e.getActionCommand();
		if (s.equals("1")) {
			str = str + "1";
			input.setText(str);
		}
		if (s.equals("2")) {
			str = str + "2";
			input.setText(str);
		}
		if (s.equals("3")) {
			str = str + "3";
			input.setText(str);
		}
		if (s.equals("4")) {
			str = str + "4";
			input.setText(str);
		}
		if (s.equals("5")) {
			str = str + "5";
			input.setText(str);
		}
		if (s.equals("6")) {
			str = str + "6";
			input.setText(str);
		}
		if (s.equals("7")) {
			str = str + "7";
			input.setText(str);
		}
		if (s.equals("8")) {
			str = str + "8";
			input.setText(str);
		}
		if (s.equals("9")) {
			str = str + "9";
			input.setText(str);
		}// 输入运算符号
		if (s.equals("+")) {
			num1 = Double.parseDouble(input.getText());
			str = "";
			flag = 1;
		}
		if (s.equals("-")) {
			num1 = Double.parseDouble(input.getText());
			str = "";
			flag = 2;
		}
		if (s.equals("*")) {
			num1 = Double.parseDouble(input.getText());
			str = "";
			flag = 3;
		}
		if (s.equals("/")) {
			num1 = Double.parseDouble(input.getText());
			str = "";
			flag = 4;
		}

		// 输入等号
		if (s.equals("="))
		{
			num2 = Double.parseDouble(input.getText().toString());
			if (flag == 1) {
				result = num1 + num2;
			}
			if (flag == 2) {
				result = num1 - num2;
			}
			if (flag == 3) {
				result = num1 * num2;
			}
			if (flag == 4) {
				result = num1 / num2;
			}
			
			 input.setText(String.valueOf(result));
			 str="";
		}
		if (s.equals("清空")) {
			input.setText("0");
			str="";
			

		}

	}

	
}

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值