Java培训笔记十八(StringBuffer类的介绍)

StringBuffer类的介绍

 

StringBuffer类位于:java.lang
StringBuilder类位于:java.lang

两者都实现了Serializable, Appendable, CharSequence接口,表明StringBuffer类的对象
是可进行附加可变的字符序列

注意:1、String与StringBuffer相比,StringBuffer的特点:
           (1)StringBuffer是可变字符序列,这种可变性,指的是在原有字符序列的基础上进行
              insert;append;delete等操作,会对原有字符序列的值产生直接影响
           (2)StringBuffer是线程安全的且引用了缓冲机制的字符序列,其执行效率要大于String
          
     2、String与StringBuffer间的转换:
           (1)String转换为StringBuffer,借助StringBuffer的构造函数,并将一个要转换的
              String作为其实参值;
           (2)StringBuffer转换为String,借助StringBuffer类中的toString()方法
     3、StringBuffer与StringBuilder:
           (1)都是可变字符序列,但StringBuilder类提供一个与 StringBuffer 兼容的 API,
                但不保证同步,且被设计用作 StringBuffer 的一个简易替换
           (2)两者具有相似的方法,方法的执行效果基本一致
          
StringBuffer类中的常用方法:
(1) append() 在调用该方法的可变字符序列的基础上,将基本类型的变量值或String/StringBuffer/
   Object对象的值,附加到原有可变字符序列的尾部
  
   注意:该方法对基本类型和引用类型都提供了重载的方法,请详细查看对应的API
   (参见:cn.com.stringbuffer.append)
  
(2) delete(int start,int end) 与deleteCharAt(int index)
    相同点: 两个方法都是用于,从调用该方法的可变字符序列中删除字符
    不同点: delete在删除时,需要制定起始位置(start)和结束位置(end),并将该范围内的字符删除掉;
          deleteCharAt在删除时,只需要指定要被删除的字符所在下标位置,删除单个字符
    注意:使用delete删除某范围内的字符的时候,包含起始位置,但不包含结束位置  
    (参见: cn.com.stringbuffer.delete)
   
(3) insert() 在调用该方法的可变字符序列的基础上,将基本类型的变量值或String/StringBuffer/
   Object对象的值,以指定位置为起始点,插入到原有可变字符序列中
  
   注意:1)insert()方法中的第一个参数offset为插入点的起始位置。该方法对基本类型和引用类型都提供
        了重载的方法,请详细查看对应的API;
        2)如果,在进行插入数据操作时,被插入的可变字符序列为空,那么,只能从其0下标插入;如果,不为
        空,那么,插入点不能超过可变字符序列的长度
       
       
 标注: (1)除了以上列举的3个方法是StringBuffer类特有的意外,其他没有列举的方法,基本上与String类
       中的相似,请自行阅读其API文档,并写测试代码,验证与String类中的有没有什么区别
        (2)对于StringBuilder类,请自行阅读其API文档,并写测试代码
   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值