StringBuffer和StringBuilder

本文详细介绍了Java中StringUtils类的isNotBlank方法用于字符串验证,以及StringBuilder与StringBuffer的区别与使用场景。重点阐述了如何利用StringBuffer进行高效字符串拼接操作,并深入探讨了其成员方法及功能,旨在提升开发者在处理字符串任务时的效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.org.apache.commons.lang.StringUtils
  StringUtils类     isNotEmpty将空格也作为参数,isNotBlank则排除空格参数
  
  判断某字符串是否不为空且长度不为0且不由空白符(whitespace)构成,等于!isBlank(String str)
  public static boolean isNotBlank(String str)


2. StringBuilder与StringBuffer区别
  //没有同步(线程非安全)需求使用StringBuilder 
  执行速度 : StringBuilder > StringBuffer
  线程非安全(StringBuilder)  线程安全(StringBuffer)
  都是字符串变量,是可改变的对象,对字符串做操作时,实际上是对一个对象操作,不像String一样创建一些对象进行操作,所以速度就快了。
  三者使用总结 : 如果操作少量的数据用String
                单线程操作字符串缓冲区下操作大量数据用StringBuilder
                多线程操作字符串缓冲区下操作大量数据用StringBuffer      
  
3.常见对象StringBuffer的功能
  3.1如果对字符串进行拼接操作,每次拼接,都会构建一个新的String对象,即耗时,又浪费空间,而StringBuffer可以解决.
  3.2线程安全的可变字符序列 
  3.3长度和内容可变,String不可变。使用StringBuffer做拼接不会浪费太多资源

4.StringBuffer类的成员方法
  4.1 添加功能 public StringBuffer  append(String str) 可以把任意类型数据添加到字符串缓存区中
              public StringBuffer  insert(int offset,String str)
     StringBuffer sb = new StringBuffer()  创建字符串缓存区对象
  4.2 删除功能  //删除指定位置的字符,并返回本身
              public StringBuffer  deleteCharAt(int index)
              //删除从指定位子开始指定位置结束的内容,并返回本身  ,包左不包右
              public StringBuffer delete(int start , int end)
  4.3 替换功能 
      //从start开始到end用str替换    
      public StringBuffer  replace(int start , int end , String str)
  4.4 反转功能 : public StringBuffer reverse()   
  4.5 截取功能 : 返回值类型是Stirng类型,本身没有发生变化
                public String subString(int start)
                public  String subString(int start , int end);




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值