JAVA实现简易计算器
用JAVA做了一个简易的计算器,可以简单逻辑运算。
由于本人新手,代码能力有限。程序健壮性还是有些许问题。
希望看到此文章的各位朋友可以在评论区里说新的好的解决方法。由衷的感谢。
(第一个问题就是每次运算都要按下等号)可能是我设计的时候就有问题。
(第二个问题是等号按下后,如果输入数字下一次的值不会覆盖,这个我曾想过使用标记,但我觉得不是可能不是最好的方式,所以没有修改)
其他问题我暂时没有排查出来。如果有,希望可以指正。
效果:
代码如下。
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
/**
* @author 徐平凡
* @version 1.0
* @date 2018.12.27
**/
public class Compute extends JFrame {
//CFrame类继承JFrame
private static JPanel pan1 = new JPanel(); //创建面板对象pan1
private static JPanel pan2 = new JPanel(); //创建面板对象pan2
private static JTextField tf = new JTextField("0.0"); //创建文本框tf,内容为0.
private static JTextField td = new JTextField("0.0");
private static JButton []b = new JButton[10]; //声明按钮数组b(数字按钮)
private static JButton bp,ba,bs,bm,bd,be,bc,bS; //声明按钮对象
public static void main(String args[]){
Compute frm = new Compute();//创建一个新的Compute类对象 frm
MyActLister ac = new MyActLister();
for(int i=0;i<=9;i++){
b[i] = new JButton(""+i); //创建数字按钮
b[i].setBackground(Color.CYAN); //占位数字按钮背景
b[i].setOpaque(false); //设置透明
b[i].addActionListener(ac);//注册监听
}
bp = new JButton(".");ba = new JButton("+");bs = new JButton("-");
bm = new JButton("*");bd = new JButton("/");be = new JButton("=");
bc = new JButton("C");bS = new JButton("BS");//创建操作符按钮
bc.addActionListener(ac);bS.addActionListener(ac);bp.addActionListener(ac);
ba.addActionListener(ac);bs.addActionListener(ac);bm.addActionListener(ac);
bd.addActionListener(ac);be.addActionListener(ac);//注册监听
bp.setBackground(Color.cyan);ba.setBackground(Color.cyan);bs.setBackground(Color.cyan);
bm.setBackground(Color.cyan);bd.setBackground(Color.cyan);be.setBackground(Color