A-A+

下面是一个Applet程序 其功能是通过两个文本框获得用户输入两个数 按回车键计算这两个数的

2022-08-05 22:26:32 问答库 阅读 172 次

问题详情

下面是一个Applet程序,其功能是通过两个文本框获得用户输入两个数,按回车键计算这两个数的商。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
程序运行结果如下:

import java.awt.*;
import java.awt.Event.*;
import java.applet.*;
/*
<applet code="ex14_3.class" width=800 height=400 >
</applet>
*/
public class ex14_3 extends Applet{
private TextField tf1,tf2;
private String strAnswer;
public void init(){
tf1=new TextField(20);
add(tf1);
tf2=new TextField(20);
add(tf2);
strAnswer="Undefined";
}
public void paint(Graphics g){
Font f=new Font("TimesRoman",Font.PLAIN, 20);
g.setFont(f);
g.drawString("result:",80,100);
g.drawString(strAnswer,60,150);
}
public boolean action(Event e, Object o){
String s1=tf1.getText();
String s2=tf2.getText();
try{
int n1= String.valueOf(s1);
int n2= String.valueOf(s2);
int ut=n1/n2;
strAnswer=Integer.parseInt(out);
}
catch(NumberFormatException nfe){
strAnswer="error number!";
}
repaint();
return true;
}
}
ex14_3.htm1
<HTML>
<HEAD>
<TITLE>ex14_3</TITLE>
</HEAD>
<BODY>
<applet code="ex14_3.class" width=800 height=400 >
</applet>
</BODY>
</HTML>请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:Integer.parseInt(s1)Integer.parseInt(s2)String.valueOf(out)
Integer.parseInt(s1)Integer.parseInt(s2)String.valueOf(out) 解析:本题主要考查Applet窗口和用户自己编写异常处理方法的综合应用。解题关键是能根据实际问题找到异常发生的根源,并依此编写异常处理方法,同时还需要有Applet窗口的基本知识,以及熟悉Applet事件机制。本题中,第一处和第二处错误一样,误用了String类的方法,这里应该是将String类的对象转化为int类型,第三处错误与之前的两个错误相反,应该将int类型的变量out转化为String类的对象。

考点:个数,两个