熟悉java.lang包-2(八、字符串处理相关类)

来源:互联网 发布:telnet 常用端口号 编辑:程序博客网 时间:2024/05/17 06:46

 

八、字符串处理相关类

String类:public final class String implements java.io.Serializable, Comparable<String>, CharSequence

StringBuffer类: public final class StringBuffer extends AbstractStringBuilder implements java.io.Serializable, CharSequence

 

共同点:都是final类,不可以被继承

              都实现了java.io.Serializable, CharSequence接口

 

不同点:

1  String类实现了Comparable接口,所以有compareTo()方法,StringBuffer类没有实现Comparable接口,没有compareTo()方法。

    所以涉及到字符串比较的时候,要使用String类,不要使用StringBuffer类。

    compareTo()方法实现两个字符串对象的关系,大于,等于,小于,返回值为int类型的。

2 String类用于不发生改变的字符串,即固定内容的字符串对象;

   StringBuffer类用于内容不固定的字符串对象,它提供的append(),delete(),replace(),insert()方法对处理非固定字符串对象十分方便。

   所以处理内容固定的字符串对象时候,使用String类,处理内容不固定的字符串对象时,使用StringBuffer类。

3 String类重写了Object类的equals()方法,可以直接用来比较两个字符串的内容是否相等;

   StringBuffer类没有重写Object类的equals()方法,不可以直接用来比较两个字符串内容是否相等;

4 String类实例化对象可以通过:String str = "abvf";  方式进行

   StringBuffer类却不可以,可以通过StringBuffer strbuf = new StringBuffer("abvf");     方式进行。

 

详细说明下:

StringBuffer类:提供的方法

1 用于处理字符串内容的append(),delete(),replace(),insert()方法

2 取字符串长度length()方法

3 获得指定位置的字符charAt()方法

4 取子串substring()方法

5 返回 String 对象内第一次出现子字符串的字符位置indexOf(),lastIndexOf()方法

6 字符串反转reverse()方法

 

String类:提供的方法

1 取字符串长度length()方法

2 判断字符串是否为空isEmpty()方法

3 获得指定位置的字符charAt()方法

4 忽略大小写的字符串比较equalsIgnoreCase()方法

5 判断开头和结尾的字符startsWith(),endsWith()方法

6 返回 String 对象内第一次出现子字符串的字符位置indexOf(),lastIndexOf()方法

7 取子串substring()方法      

8 字符串连接concat()方法,字符替换replace(),字符串替换replace(), 字符串分割split(), 大小写转换toLowerCase(Locale),toUpperCase(),删除空格trim(),转换为字符数组toCharArray(),格式化format()方法

9 类型转换valueOf()方法           

 

总结一下吧:String类提供了更多的对字符串操作的方法,不过前提是对固定内容的字符串对象。

原创粉丝点击