Java中的常用类——StringBuffer



StringBuffer类概述

线程安全的可变字符序列。一个类似于 String 的字符串缓冲区,但不能修改。

虽然在任意时间点上它都包含某种特定的字符序列,但通过某些方法调用可以改变该序列的长度和内容


从 JDK 5 开始,为该类补充了一个单个线程使用的等价类,即 StringBuilder。与该类相比,

通常应该优先使用 StringBuilder 类,因为它支持所有相同的操作,但由于它不执行同步,所以速度更快。


StringBuffer类的构造方法

public StringBuffer()

构造一个其中不带字符的字符串缓冲区,其初始容量为 16 个字符。

public StringBuffer(int capacity)

指定容量的字符串缓冲区对象

public StringBuffer(String str)

指定字符串内容的字符串缓冲区对象




StringBuffer的方法

public int capacity()

返回当前容量。理论值

public int length()

返回长度(字符数)。 实际值


public  static  void  main(String[] args){

StringBuffer  sb1 = new StringBuffer();

System.out.println(sb1.length());

System.out.println(sb1.capacity());


StringBuffer  sb2 = new StringBuffer("abc");

System.out.println(sb2.length());

System.out.println(sb2.capacity());

}


运行结果:

0

16

3

19


StringBuffer的添加功能

public StringBuffer append(String str)

可以把任意类型数据添加到字符串缓冲区里面,并返回字符串缓冲区本身


public  static  void  main(String[] args){

StringBuffer  sb1 = new StringBuffer();

sb1.append(100);

sb1.append("abcde");

sb1.append(true);

System.out.println(sb1);

}

运行结果:

100abcdetrue


public StringBuffer insert (int offset,String str)

在指定位置把任意类型的数据插入到字符串缓冲区里面,并返回字符串缓冲区本身


public  static  void  main(String[] args){

StringBuffer  sb1 = new StringBuffer(12345);

sb1.insert(2,"hello");

System.out.println(sb1);

}

运行结果:

12hello345


StringBuffer的删除功能

public StringBuffer deleteCharAt (int index)

删除指定位置的字符,并返回本身


public  static  void  main(String[] args){

StringBuffer  sb1 = new StringBuffer(“abcde”);

sb1.deleteCharAt(3);

System.out.println(sb1);

}

运行结果:

abce


StringBuffer的反转功能

public StringBuffer reverse()

字符串反转

public  static  void  main(String[] args){

StringBuffer  sb1 = new StringBuffer(“abcde”);

sb1.reverse(sb1);

System.out.println(sb1);

}

运行结果:

edcba

String StringBuffer 和 StringBuilder 的区别



1)StringBuffer 和 StringBuilder 的区别

StringBuffer是jdk1.0版本的,是线程安全的,效率低

StringBuilder是jdk1.5版本的,是线程不安全的,效率高


2)String和StringBuffer,StringBuilder的区别

String是一个不可变的字符序列

StringBuffer,StringBuilder是可变的字符序列



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值