赞
踩
结构图:
如何用java写一个简易的加法计算器?本人菜鸟一枚,半个小时完成。大部分代码的解读注释已经标记好了,如下
程序入口
程序的main方法应该始终保持干净清爽,不应该乱七八糟
在这里,我们定义一个公共类 TestCompu(计算器测试)
public class TestCompu {
public static void main(String[] args) {
Compu compu = new Compu();
}
}
2.计算器需要一个窗口来展示,于是我们创建一个 Compu的窗口(Frame),只需要继承Frame就可以调用Frame中所有方法,其余的解释见代码中,
import java.awt.*; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; //计算器类 public class Compu extends Frame { //用构造器设置默认属性和方法 public Compu(){ //组件设置 //3 * 文本框 TextField num1 = new TextField(10); //‘10’可以理解为文本框长度 TextField num2 = new TextField(10); TextField num3 = new TextField(20); //1 * 标签 Label label = new Label("+"); //1 * 按钮 Button button = new Button("="); //设置布局-采用流式布局 setLayout(new FlowLayout()); //组件可见(注意顺序) add(num1); add(label); add(num2); add(button); add(num3); //自适应窗口参数 pack(); //窗口可见 setVisible(true); //为按钮‘=’设置监听来实现功能 //需要一个ActionListener,所以我们需要构造一个 ActionListener 建下一个class MyActionListener myActionListener = new MyActionListener(num1,num2,num3); button.addActionListener(myActionListener); //设置关闭窗口的方法 addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { System.exit(0); } }); } }
3.在上面的Compu的类中,由于按键的功能需要依赖监听器来实现,所以我们,创建一个名为MyActionListener的类
import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class MyActionListener implements ActionListener { //准备三个文本框接受 private TextField num1,num2,num3; //有参构造 public MyActionListener(TextField num1,TextField num2,TextField num3) { //把Compu中的文本框 numx 传给 监听器中的 num x this.num1 = num1; this.num2 = num2; this.num3 = num3; } //按钮功能设置 @Override public void actionPerformed(ActionEvent e) { //1. 将 num1 和 num2 这俩文本框中的值 相加 //首先,将num1 num2 通过有参构造以参数的形式传到这个类 并以 int形式 赋值给 n1 n2 (待会要用它俩来计算) int n1 = Integer.parseInt(num1.getText()); int n2 = Integer.parseInt(num2.getText()); //2. 相加之和给文本框num3 num3.setText(""+(n1+n2)); //num3是文本框不是数值!!! //3. 相加后清除num1 num2 文本框中的数 num1.setText(" "); num2.setText(" "); } }
运行效果:
以上就是这个简易加法运算器的全部代码了,但这种写法不是最优,但最适合新手理解上手,如果有注释错误的地方,请多多包涵,欢迎指正,如果觉得写的还不错,也请点赞肯定一下,感激感激!!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。