资源描述:
《字符串处理ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第6章字符串处理字符串是字符的序列,它是组织字符的基本的数据结构。Java将字符串当作对象来处理,它提供了一系列的方法对整个字符串进行操作,使得字符串的处理更加容易和规范。在Java中,提供了各种处理字符串的方法。Java语言中的包java.lang中封装了final类String和StringBuffer,其中类String对象是字符串常量,建立后不能改变。而类StringBuffer对象类似于一个字符缓冲区,建立后可以修改。6.1类String字符串6.1.1类String字符串的定义String类是字符串常量类,String对象建立后不能修改
2、。以前使用的每个字符串常量(用双引号括起来的一串字符)实际上都是String对象,如字符串“Java”在编译后即成为String对象。因此,可以用字符串常量直接初始化一个String对象。例如:Strings="HelloWorld.";由于每个字符串常量对应一个String类的对象,所以对一个字符串常量可以直接调用类String中提供的方法。例如:intlen="HelloWorld!".length();将返回字符串的长度12,字符串的长度即字符串中字符的个数。通过类String提供的构造方法,可以生成一个空字符串(不包含任何字符的字符串),也
3、可以由字符数组或字节数组来生成一个字符串对象。缺省的构造方法不需要任何参数,它生成一个空字符串。例如:Strings=newString();其他创建String对象的构造方法有:String(Stringvalue)用已知串value创建一个字符串对象。String(charchars[])用字符数组chars创建一个字符串对象。String(charchars[],intstartIndex,intnumChars)用字符数组chars的startIndex位置开始的numChats个字符,创建一个字符串对象。【例6.1】类String构造方法
4、的使用。publicclassStringConstructors{publicstaticvoidmain(Stringargs[]){Strings,s1,s2,s3,s4,s5,s6,s7;bytebyteArray[]={(byte)'J',(byte)'a',(byte)'v',(byte)'a'};CharcharArray[]={'程','序','设','计'};StringBuffersb=newStringBuffer("欢迎");;s=newString("Hello!");s1=newString();s2=newString
5、(s);s3=newString(sb);s4=newString(charArray,2,2);s5=newString(byteArray,0);s6=newString(charArray);s7=newString(byteArray,0,1);System.out.println("s="+s);System.out.println("s1="+s1);System.out.println("s2="+s2);System.out.println("s3="+s3);System.out.println("s4="+s4);System.
6、out.println("s5="+s5);System.out.println("s6="+s6);System.out.println("s7="+s7);}}程序运行结果为:s=Hello!s1=s2=Hello!s3=欢迎s4=设计s5=Javas6=程序设计s7=J6.1.2类String的常用方法类String中提供的访问String字符串的方法很多,大体上可分为类转换、子字符串、比较、修改等几类。1.类String字符串的比较类String中提供了一些方法,用来进行字符串的比较。(1)booleanequals(ObjectanObj
7、ect)和equalsIgnoreCase(StringanotherString)方法equals()和equalsIgnoreCase()用来比较两个字符串的值是否相等,不同的是后者忽略字母的大小写。例如:System.out.println("abc".equals("abc"));System.out.println("abc".equalsIgnoreCase("ABC"));注意:它们与运算符“==”实现的比较是不同的。运算符“==”比较两个字符串对象是否引用同一个实例对象,而equals()和equalsIgnoreCase()则比较
8、两个字符串中对应的每个字符是否相同。例如:Strings=newString("abc“);Strings1=newStr