commons - lang(1) StringUtils
分享几个关于StrngUtils的几个实用的方法(以下方法中省略了参数)
1.isBlank()
这个方法用来判空,包括null和空字符串,之前自己写的时候都是str != null && str.trim().length() > 0 ,现在有了这个方法直接StringUtils.isBlank(str)即可
贴一下源码吧,下面要和isEmpty()进行比较
1 public static boolean isBlank(CharSequence cs) {
2 int strLen;
3 if (cs == null || (strLen = cs.length()) == 0) {
4 return true;
5 }
6 for (int i = 0; i < strLen; i++) {
7 if (Character.isWhitespace(cs.charAt(i)) == false) {
8 return false;
9 }
10 }
11 return true;
12 }
2.isEmpty()
这个方法与上面的isBlank()方法唯一的不同的在于空字符串的判断,请看源码
1 public static boolean isEmpty(CharSequence cs) {
2 return cs == null || cs.length() == 0;
3 }
对于空字符串isEmpty()并不准确判断,因为它和isBlank()方法相比少了Character.isWhitespace()的判断.于是有了下面这种运行结果
推荐使用isBlank()
3.repeat()
用于重复拼接字符串,还可以指定使用分隔符,这个方法结合join()可以在以报文的方式发送文件时,补齐文件名,文件大小等属性的字符串长度,jdk1.8里String也新增了
join()
源码只贴一部分吧,比较有意思的是那个for循环部分,参数repeat表示要重复的次数,可以这么理解 i-=2; i++ <=> i--
就这么多吧,StringUtils还有很多其他的方法,比如difference(),contains()(用字符对应的int值来判断是否被包含),基本上都是static的,调用的时候也非常方便
下一篇是RandomStringUtils,RandomUtils 链接:http://www.cnblogs.com/tele-share/p/8168880.html