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

admin2009-01-15  67

问题 下面是一个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 out=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)

解析 本题主要考查Applet窗口和用户自己编写异常处理方法的综合应用。解题关键是能根据实际问题找到异常发生的根源,并依此编写异常处理方法,同时还需要有Applet窗口的基本知识,以及熟悉Applet事件机制。本题中,第一处和第二处错误一样,误用了String类的方法,这里应该是将String类的对象转化为int类型,第三处错误与之前的两个错误相反,应该将int类型的变量out转化为String类的对象。
转载请注明原文地址:https://jikaoti.com/ti/YkkiFFFM
0

最新回复(0)