第一次实验 字符串的查找与替换

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一、字符串的查找与替换

实验目的:

1.掌握Java中多种布局管理器的使用。

2.掌握字符串的处理,了解StringBuffer类。

3.掌握事件处理程序的写法,学会使用内部类对象监听事件。

实验内容:

1.通过嵌套面板、组合各种布局,构造出一个比较美观、合理的界面。熟练掌握

FlowLayout,GridLayout和BorderLayout的使用。如下图所示:

实验要求:

1. 使用内部类对象实现鼠标事件的监听。

2.考虑用更简单的方法实现字符串的查找与替换算法。

实验指导:

1.使用内部类对象实现鼠标事件的监听。定义主类TextFindReplace,在该主类中

定义内部类MouseL对“Find”、“Replace”、“Exit”三个按钮上的点击事件监听

及处理。程序结构如下所示:

class TextFindReplace extends Frame {

//声明类成员变量

Button btnFind;

Button btnReplace;

Button btnExit;

public TextFindReplace(){

//初始化

btnFi nd=new Button(“Find”);

btnReplace=new Button(“Replace”);

btnExit=new Button(“Exit”);

//注册事件

MouseL myListener=new MouseL();

btnFind.addMouseListener(myListener);

btnReplace.addMouseListener(myListener);

btnExit.addMouseListener(myListener);

}

class MouseL extends MouseAdapter{

public void mousePressed(MouseEvent e){

//调用字符串的查找与替换方法

}

}

}

2.定义类MatchFun用于实现字符串的查找与替换,该类中主要有二个方法:

方法int strFind(String s1,String s2,int pos) 用于实现字符串的查找,返回s2在s1

中出现的次数。考虑到教材上的实现太复杂,这里给出一种更简单的实现,程

序段如下:

public int strFind(String s1,String s2,int pos)

{ int count=0;

int index=s1.indexOf(s2,pos); //返回从pos处开始首次出现指定字符串s2的索引号while(index>-1)

{ count++;

pos=index+s2.length();

index=s1.indexOf(s2,pos);

}

return count;

}

方法int strReplace(String s1,String s2,String s3,int pos)用于实现字符串的替换操

作,返回替换的次数。考虑到方法strFind 已经实现了查找次数的功能,所以按

下面的方法修改也许会更好:

public String strReplace(String s1,String s2,String s3,int pos){

String bpos;

String apos=s1.substring(pos);

if(pos==0){ bpos=””;}

else{ bpos=s1.substring(0,pos-1);}

apos=apos.replaceAll(s2,s3);

return bpos+apos;

}

3.完成代码并调试,实现字符串的查找有替换。

实验总结:

1.从该例中可以看出,界面的设计往往是通过嵌套多个面板,结合多种布局才能

达到满意的效果。

2.进行Java程序设计时,尽量使用JDK中已经实现的功能,如本例的类MatchFun

中,使用了String类的indexOf()、substring()和replaceAll(),使程序非

常简洁,可读性较好。

3.调试时应该仔细阅读错误提示。

相关文档
最新文档