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);