第4章 字符串课件

上传人:我*** 文档编号:141147251 上传时间:2020-08-04 格式:PPT 页数:42 大小:179.50KB
返回 下载 相关 举报
第4章 字符串课件_第1页
第1页 / 共42页
第4章 字符串课件_第2页
第2页 / 共42页
第4章 字符串课件_第3页
第3页 / 共42页
第4章 字符串课件_第4页
第4页 / 共42页
第4章 字符串课件_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《第4章 字符串课件》由会员分享,可在线阅读,更多相关《第4章 字符串课件(42页珍藏版)》请在金锄头文库上搜索。

1、第4章 字符串,4.1 String 类的特点 4.2 String Buffer类的特点 4.3 字符串的特殊处理方法,4.1 String 类的特点,String类是字符串常量类,该类对象在建立后不能修改。Java编译器保证每个字符串常量都是String类对象。用双引号括住的一串字符即为字符串常量,比如“Welcome to Java!,在通过编译器编译后成为String对象。因而,实例化一个String类对象既可以通过字符串常量,也可以通过系统提供的构造方法。,4.1.1 String类的基本方法 前面谈到过String类的一些基本属性,本节我们讨论String类的一些常用方法。 1St

2、ring类初始化 String类可用字符串常量对其初始化,也可调用其构造方法来进行。例如: String s=Welcome to Java Wrold! ; String类主要构造方法见表4.1。,表4.1 String类的构造方法,例如: char char1= a, b, c, d; String s1=new String(); String s2=new String(char1); String s3=new String(char1,1,2); /生成字符串“bc” String s4=new String(char1,0,1,3); /生成字符串“bcd”,2字符串类的Stri

3、ng访问 字符串的访问即字符串的引用,它包括得到字符串的长度,得到指定位置的字符或子串,以及得到某个字符或子串在字符串中的索引位置等。String类的功能很强,几乎覆盖了所有的字符串运算操作。表4.2给出了一些常用的字符串运算方法。,表4.2 String类的常用方法列表,例如: String s=abCD; int i=s.length(); / i=4 String s1=s.toLowerCase(); /s1=abcd String s2=s.toUpperCase(); /s2=ABCD char c=s.charAt(3); / c=D String s3=s.substirng(

4、2); /s3=CD String s4=s.substirng(2,3); /s4=C,boolean b=s.regionMatches(1, bCE,0,2); /b=false boolean b1=s.startWith(ab); /b1=true boolean b2=s.endWith(de); /b2=false int m=s.indexOf(C); / m=2 int k=s.lastIndexOf(C); /k=2 String s5=s.replace(b, B); / s5=aBCD double d=5.234; String s6=String.valueOf(d

5、); /s6=5.234,4.1.2 String类的使用实例 在上一节中我们给出了String类的一些方法,可以看出,String类几乎覆盖了字符串的所有操作,给实际的编程带来了极大的方便。下面我们给出一个String类的使用实例。 例4.1 import java.awt.*; public class Messages ,/* Allows messages to be sent to the class SquareFigure via a dialog box. */ public static void main (String args) SquareFigure.create(

6、); while (true) try ,String message1 = DialogBox.request (Supply message to be sent: , SquareFigure.); String message = message1.trim(); int startArg = message.indexOf(); int endArg = message.indexOf(); int commaPosn; String argRaw; String arg; String arg1Raw; String arg1; String arg2Raw;,String arg

7、2; String name1 = message.substring(0, startArg); /取出类中的方法 String name = name1.trim(); if (endArg - startArg 1) argRaw = message.substring(startArg+1, endArg); /得到方法的调用参数 arg = argRaw.trim(); else arg = ; if (endArg != message.length() - 1),DialogBox.warn(Message not understood: try again!); elseif

8、(name.equals(SquareFigure.moveRight) SquareFigure.moveRight(Integer.parseInt(arg); else if (name.equals(SquareFigure.moveLeft) SquareFigure.moveLeft(Integer.parseInt(arg); elseif(name.equals(SquareFigure.moveUp) SquareFigure.moveUp(Integer.parseInt(arg); elseif(name.equals(SquareFigure.moveDown),Squ

9、areFigure.moveDown(Integer.parseInt(arg); elseif (name.equals(SquareFigure.setColour)if (arg.equals(Color.red) SquareFigure.setColour(Color.red); else if (arg.equals(Color.blue) SquareFigure.setColour(Color.blue); else if (arg.equals(Color.green) SquareFigure.setColour(Color.green); else DialogBox.w

10、arn(Invalid colour: try again);, else DialogBox.warn(Message not understood: try again!); catch (Exception e) DialogBox.warn(Message not understood: try again!); ,在该例中,SquareFigure、DialogBox同样是我们提供的标准类,读者可从附录中查阅。 本程序首先生成一个红色的正方形(如图4.1所示),该正方形显示在窗口的正中间,同时会出现一个如图4.2所示的提示框。在该提示框中输入类SquareFigure中的方法,就可以

11、达到移动、改变颜色的目的。如在提示框中分别输入moveUp(30)、setColour(Color.blue)后结果如图4.3、4.4所示。在程序中,我们用到了String类的一些方法,读者可自行分析。,图 4.1,图 4.2,图 4.3,图 4.4,4.2 String Buffer类的特点,String类是字符串常量类,初始化后就不能进行修改,而String Buffer类是字符串缓冲区,不仅可以接受修改,还可以读入整个文件。在Java中,String Buffer类是一个可以修改的字符串对象,使用起来比String类更加灵活、方便。Java中并不支持运算符的重载,但“+”是个例外,例如,

12、对语句: String s=Welcome +to+Java! ;,编译器首先生成类StringBuffer的一个实例,然后连续调用方法append(),最后,再调用方法toString()把StringBuffer对象转换为String对象。这相当于执行语句: String s=new String Buffer(Welcome).append(to).append(Java! ).toString();,4.2.1 String Buffer类的基本方法 与String类类似,String Buffer类方法很多,下面我们也从初始化与访问方法两个方面加以介绍。 1String Buffer

13、类的初始化 String Buffer类只能用初始化函数对其初始化,如果想按下面语句: String Buffer s= Welcome to Java! ; 对其初始化,则系统会给出出错信息。 String Buffer的构造函数如表4.3所示。,表4.3 String Buffer类的构造函数,2String Buffer类的访问方法 String Buffer类的方法主要就是添加字符和插入字符,如表4.4所示。,表4.4 String Buffer类的主要方法,例如: string Buffer sb=new String Buffer(this is a test String Buf

14、fer); sb.setLength(14); / sb=this a test sb.set Char(0, T ); /sb=This is a test sb.append(5.12); / append a double number sb.append(true); /append a Boolean number, then sb=This is a test5.12true sb.insert(14, value=); /sb=This is a test value=5.12true,4.2.2 String Buffer类的使用实例 下面给出一个字符串的反转操作实例。 例4.

15、2 public class Reverse String public Reverse String() public static void main(String args) String message1 = Dialog Box.request,(Supply a String to be reversed: ); ReverseString r=new ReverseString(); Transcript.print(r.reverse(message1); public String reverse(String s) int len=s.length(); StringBuf

16、fer sb=new StringBuffer();,for(int i=(len-1);i=0; i-) sb.append(s.charAt(i); return sb.toString(); ,当运行程序的时候,会出现一个对话框,要求输入一个字符串。如输入:“Welcome to Java World!(如图4.5所示),则反转的结果如图4.6所示。,图 4.5,图 4.6,4.3 字符串的特殊处理方法,我们知道,基于网络的应用常常会碰到诸如对一个字符串进行解析,将其分解为多个子串的问题。如Web页面表格设计中,浏览器可能以字符串的形式返回多个表格值。例如: String s=name=Boy,如果调用String、String Buffer类中方法,当然也可以实现字符串的解析,但较为繁琐。为此,Java类jav

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号