一个小计算器中的小问题
private class CommandAction implements ActionListener{
public void actionPerformed(ActionEvent e) {
String command = e.getActionCommand();
if(start){
if(command.equals("-")){
display.setText(command);
start = false;
}else
lastCommand = command;
}else{
calculate(Double.parseDouble(display.getText()));
lastCommand = command;
start = true;
}
}
}
------解决方案--------------------
按你写的程序解读出来, 可以告诉你 你这个程序有问题.
我下面给红色表的是两个监听器,与问题 有一些无用代码,我给你个程序思路。
strart=true or false 有意思么 点击按钮了 ,就会触发事件了
还有以下这块代码 有意思么 ,点按钮,就触发事件,把符号赋值给字符串不就完了么。用判断么.
我有说的不对可以指出来.
共同学习,进步么
Java code
if(start){//如果没有start是true的话进入 条件循环 这里判断的是否点击是符号键
if(command.equals("-")){//判断你是否点的是‘-’号
System.out.println("进入了减号");
display.setText(command);
start = false;
}else//如果不是'-'号
lastCommand = command;//把该符号赋值 给lastCommand
}else{//如果不是点击是符号键 的话进入
calculate(Double.parseDouble(display.getText()));
lastCommand = command;
start = true;
}