[试题]

下面是一个Applet程序,其功能是对输入的字符串进行抽取。要求给出抽取的子串在母串中的起始和终止位置,输出抽取出来的子串。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。

注意:不改动程序的结构,不得增行或删行。

程序运行结果如下:

import java.awt.*;

import java.applet.*;

public class ex26_3 extends Applet{

TextField tf1;

TextField tf2;

TextField tf3;

B.utton btn;

String strResult;

public void init(){

Label 1 = new Label("字符串: ");

add(l);

tf1 = new TextField(20);

add(tf1);

l = new Label ("开始位置: ");

add(l);

tf2 = new TextField(5);

add(tf2);

l = new Label ("结束位置:");

add(l);

tf3 = new TextField(5);

add(tf3);

btn = new Button("抽取");

add(btn);

strResult = " ".

resize(250, 200);

}

public void paint(Graphics g){

g.drawString("选中的子串为:", 80, 140);

g.drawString(strResult, 80, 140);

}

public boolean action(Event e, Object o){

if (o == "抽取") {

try{

String str1 = tf1.getText();

String str2 = tf2.getText();

String str3 = tf3.getText();

int from = Integer.parseInt(str2);

int to = Integer.parseInt(str1);

strResult = str1.substring(from, to-1);

}

catch( StringIndexOutOfBoundsException se){

strResult="字符索引越界!";

}

repaint ( );

return true;

}

else

return false;

}

}

ex263, htm1

<HTML>

<HEAD>

<TITLE>ex26_3</TITLE>

</HEAD>

<BODY>

<applet code="ex26_3.class" width=800 height=400 >

</applet>

</BODY>

</HTML>

参考答案与解析:

相关试题

下面是一个Applet程序,其功能是对输入的字符串进行抽取。要求给出抽取的子串在