问答题

下面是一个Applet程序,其功能是对输入的字符串进行抽取。要求给出抽取的子串在母串中的起始和终止位置,输出抽取出来的子串。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。 程序运行结果如下:
import java.awt.*; import java.applet.*; public class ex26_3 extends Applet{ TextField tf1; TextField tf2; TextField tf3; Button 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; } } ex26_3.htm1 <HTML> <HEAD> <TITLE>ex26_3</TITLE> </HEAD> <BODY> <applet code="ex26_3.class" width=800 height=400 > </applet> </BODY> </HTML>

【参考答案】

g.drawString(strResult, 80, 160) to=Integer.parseInt(str3) s......

(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)
热门 试题