30、java的StringBuffer类方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_18077275/article/details/89786278

1、StringBuffer

前面我们学习了String字符串对象,String类创建的字符串对象是不可修改的,也就是说,String字符串不能修改、删除或者替换字符串中的某个字符,即String对象一旦创建,那么实体是不可以再发生变化的,例如:
String s = new String(“我喜欢散步"); 


 
我们今天要学习StringBuffer类,该类能够创建可修改的字符串序列,也就是说,该类对象的实体的内存空间可以自动的改变大小,便于存放一个可变的字符序列,例如:
StringBuffer buffer = new StringBuffer(“我喜欢”); 
buffer.append("玩篮球 "); 
 

2、构造方法

StringBuffer类有三个构造方法:
1.StringBuffer()
2.StringBuffer(int size)
3.StringBuffer(String s)
 
使用第1个无参数的构造方法创建一个StringBuffer对象,那么分配给该对象的实体的初识容量可以容纳16个字符,当该对象的实体存放的字符序列的长度大于16时,实体的容量自动的增加,以便存放所增加的字符。
使用第2个构造方法创建一个StringBuffer对象,那么可以指定分配给该对象的实体的初识容量为参数size指定的字符个数,当该对象的实体存放的字符序列的长度大于size个字符时,实体的容量自动的增加,以便存放所增加的字符。
使用第3个构造方法创建一个StringBuffer对象,那么可以指定分配给该对象的实体的初识容量为参数字符串s的长度额外再加16个字符。当该对象的实体存放的字符序列的长度大于size个字符时,实体的容量自动的增加,以便存放所增加的字符。
 
3、常用方法

1.StringBuffer append(String s)将一个字符串对象追加到当前StringBuffer对象中 
   StringBuffer append(int n):将一个int型数据转化为字符串对象后再追加到当前StringBuffer对象中 
   StringBuffer append(Object o):将一个Object对象的字符串表示追加到当前StringBuffer对象中 
类似的方法还有:
   StringBuffer append(long n),StringBuffer append(boolean n),
   StringBuffer append(float n),StringBuffer append(double n),
   StringBuffer append(char n)
2.public chat charAt(int n ):得到参数n指定的置上的单个字符 
   public void setCharAt(int n ,char ch):将当前StringBuffer对象实体中的字符串位置n处的字符用参数ch指定的字符替换
3.StringBuffer insert(int index, String str) 将参数str指定的字符串插入到参数index指定的位置 
4.public StringBuffer reverse() :将该对象实体中的字符翻转
5.StringBuffer delete(int startIndex, int endIndex) :从当前StringBuffer对象实体中的字符串中删除一个子字符串 
   其相关方法: deleteCharAt(int index) 删除当前StringBuffer对象实体的字符串中index位置处的一个字符。
6. StringBuffer replace( int startIndex ,int endIndex, String str) :将当前StringBuffer对象实体中的字符串的一个子字符串用参数str指定的字符串替换  
 
4、示例代码


public class Demo33 {

    public static void main(String[] args) {
        StringBuffer buffer = new StringBuffer();
        buffer.append("我喜欢");
        buffer.append(123);
        buffer.append('中');
        buffer.append(12.3);
        System.out.println(buffer.toString());
        buffer.replace(2, 4, "我是来替换的");
        
        System.out.println(buffer.toString());
    }

}
 

猜你喜欢

转载自blog.csdn.net/qq_18077275/article/details/89786278