栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

# Java简易计算器编程思想

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

# Java简易计算器编程思想

Java简易计算器编程思想 面向过程:
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class TestTextFiled {
    public static void main(String[] args) {
        Calculator calculator = new Calculator();
    }
}
class Calculator extends frame{
    public Calculator(){
        //三个文本框
        TextField num1 = new TextField(10);//设置宽度
        TextField num2 = new TextField(10);
        TextField num3 = new TextField(20);
        //一个按钮
        Button button = new Button("=");
        //一个标签
        Label label = new Label("+");
        //使用流式布局排版
        setLayout(new FlowLayout());
        //依次添加组件,自适应
        add(num1);
        add(label);
        add(num2);
        add(button);
        add(num3);
        pack();
        setVisible(true);
        //添加监听事件
        button.addActionListener(new myActionlistner(num1,num2,num3));
    }
    public class myActionlistner implements ActionListener {
        private TextField num1;
        private TextField num2;
        private TextField num3;

        public myActionlistner(TextField num1, TextField num2, TextField num3) {
            this.num1 = num1;
            this.num2 = num2;
            this.num3 = num3;
        }

        @Override
        public void actionPerformed(ActionEvent e) {
            //获取加数
            int n1=Integer.parseInt(num1.getText());
            int n2=Integer.parseInt(num2.getText());
            //将结果放到第三个框中
            num3.setText(""+(n1+n2));
            //清除前两个框
            num1.setText("");
            num2.setText("");
        }
    }
}
优化面向对象思想
public class TestTextFiled {
    public static void main(String[] args) {
        Calculator calculator = new Calculator();
    }
}
class Calculator extends frame{
    TextField num1,num2,num3;


    public Calculator(){

        num1 = new TextField(10);//设置宽度
        num2 = new TextField(10);
        num3 = new TextField(20);
        Button button = new Button("=");
        Label label = new Label("+");
        setLayout(new FlowLayout());
        add(num1);
        add(label);
        add(num2);
        add(button);
        add(num3);
        pack();
        setVisible(true);
        //添加监听事件
        button.addActionListener(new myActionlistner(this));
    }
    }
class myActionlistner implements ActionListener {
    Calculator calculator=null;

    public myActionlistner(Calculator calculator) {
        this.calculator=calculator;
    }

    @Override
    public void actionPerformed(ActionEvent e) {
        //获取加数
        int n1=Integer.parseInt(calculator.num1.getText());
        int n2=Integer.parseInt(calculator.num2.getText());
        //将结果放到第三个框中
        calculator.num3.setText(""+(n1+n2));
        //清除前两个框
        calculator.num1.setText("");
        calculator.num2.setText("");
    }}
使用内部类优化传值
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class TestTextFiled {
    public static void main(String[] args) {
        Calculator calculator = new Calculator();
    }
}
class Calculator extends frame{
    TextField num1,num2,num3;


    public Calculator(){

        num1 = new TextField(10);//设置宽度
        num2 = new TextField(10);
        num3 = new TextField(20);
        Button button = new Button("=");
        Label label = new Label("+");
        setLayout(new FlowLayout());
        add(num1);
        add(label);
        add(num2);
        add(button);
        add(num3);
        pack();
        setVisible(true);
        //添加监听事件
        button.addActionListener(new myActionlistner());

    }
    class myActionlistner implements ActionListener {
        @Override
        public void actionPerformed(ActionEvent e) {
            //获取加数
            int n1=Integer.parseInt(num1.getText());
            int n2=Integer.parseInt(num2.getText());
            //将结果放到第三个框中
            num3.setText(""+(n1+n2));
            //清除前两个框
            num1.setText("");
            num2.setText("");
        }}
    }
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/756524.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号