JAVA程序改错

2025-06-22 09:48:19
推荐回答(4个)
回答1:

import java.applet.*;
import java.awt.*;
import java.awt.event.*;

public class r extends Applet implements ActionListener {
TextField text;

Button buttonEnter, buttonQuit;

public void init(){
text=new TextField("0",10);add(text);
buttonEnter=new Button("确定");buttonQuit=new Button("清除");
add(buttonEnter);add(buttonQuit);
buttonEnter.addActionListener(this);
buttonQuit.addActionListener(this);
text.addActionListener(this);
}

public void paint(Graphics g) {
g.drawString("在文本框输入数字字符回车或单击按钮", 10, 100);
g.drawString("第文本框显示该数的平方根", 10, 120);
}

public void actionPerformed(ActionEvent e) {
if (e.getSource() == buttonEnter || e.getSource() == text) {
double number = 0;
try {
number = Double.valueOf(text.getText()).doubleValue();
text.setText("" + Math.sqrt(number));
} catch (NumberFormatException event) {
text.setText("请输入数字字符");
}
} else if (e.getSource() == buttonQuit) {
text.setText("0");
}
}
}
//两个错误 1,括号不匹配,2,分号不要用全角的

回答2:

逻辑错误还是语法错误?
错误提示是什么

回答3:

在18行 text.addActionListener(this);} 后面少了个大括号

在33行 {text.setText("请输入数字字符"); 后面的括号和分号应该是在英文状态下输入的,而你是中文状态下输入的!

OK啦··忽忽·

回答4:

我也是新手 觉得那个文本事件没必要··number=Double.valueOf(text.getText()).doubleValue();写成number=Double.valueOf(text.getText());就好了

其余是我改的 希望可以多多交流 502197055

import java.applet.*;
import java.awt.*;
import java.awt.event.*;

public class R extends Applet implements ActionListener {
TextField text;
Button buttonEnter, buttonQuit;

public void init() {
text = new TextField("0", 10);
add(text);
buttonEnter = new Button("确定");
buttonQuit = new Button("清除");
add(buttonEnter);
add(buttonQuit);
buttonEnter.addActionListener(this);
buttonQuit.addActionListener(this);
//text.addActionListener(this);
}

public void paint(Graphics g) {
g.drawString("在文本框输入数字字符回车或单击按钮", 10, 100);
g.drawString("第文本框显示该数的平方根", 10, 120);
}

public void actionPerformed(ActionEvent e)
{if(e.getSource()==buttonEnter)
{double number=0;
try{
number=Double.valueOf(text.getText());
text.setText(""+Math.sqrt(number));
}
catch(NumberFormatException event)
{
text.setText("请输入数字字符");
}
}
else if(e.getSource()==buttonQuit)
{text.setText("0");
}
}
}