StringUtils工具類的使用
阿新 • • 發佈:2018-12-31
不知道你們的程式碼中是否會出現如下情況if("".equals(str) && str == null) {}, 反正我以前判斷字串為空的時候經常這麼幹,但實際上這麼寫程式碼很囉嗦,commons-lang-2.5.jar包中供了一個很方便的工具類StringUtils,今天就是簡單介紹一下這個工具類支援哪些常用功能,心中有個數,以後寫程式碼的時候也可以直接用。
1、判斷字串是否為空isEmpty()和isBlank()
通過程式碼的執行情況我們就看明白了,也看到了isEmpty()和isBlank()兩個函式的區別。String str1=""; String str2=" "; String str3=null; System.out.println(StringUtils.isEmpty(str1)); //true System.out.println(StringUtils.isEmpty(str2)); //false System.out.println(StringUtils.isEmpty(str3)); //true System.out.println(StringUtils.isBlank(str1)); //true System.out.println(StringUtils.isBlank(str2)); //true System.out.println(StringUtils.isBlank(str3)); //true
2、去空格trim()
如果字串是null,那麼返回null,不為null的時候正常去除左右空格
3、如果是null值就轉換成空字串,trimToEmpty()
System.out.println(StringUtils.trimToEmpty(" abc ")); //abc
System.out.println(StringUtils.trimToEmpty(null)); //空字串
4、indexOf() 查詢位置
System.out.println(StringUtils.indexOf(null, "abc")); //-1 System.out.println(StringUtils.indexOf("aabcd", "abc")); //0
沒必要往下繼續寫了,發現StringUtils類的原始碼提供的方法大多是與String類提供的方法重名的,使用StringUtils類最大的好處就是可以避免空指標的問題!