您好,登錄后才能下訂單哦!
這篇文章主要介紹StringUtils和CollectionUtils判斷為空的方法哪個速度更快,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
自己直接寫判斷效率高(一般是0ms),但是封裝的簡便、嚴謹(一般10ms以內)
函數StringUtils.isNotBlank(testString)
的功能與StringUtils.isBlank(testString)
相反
函數StringUtils.isNotEmpty(testString)
的功能與StringUtils.isEmpty(testString)
相反
如果字符串是String str = " ";//或者是str = " ";
所以如果判斷為空的話 最好用
StringUtils.isBlank(str) 或者 str!=null && !"".equals(str.trim())
List list = new ArrayList(); CollectionUtils.isEmpty(list); Map map = new HashMap(); CollectionUtils.isEmpty(map);
源碼:
public static boolean isEmpty(Collection<?> collection) { return collection == null || collection.isEmpty(); } public static boolean isEmpty(Map<?, ?> map) { return map == null || map.isEmpty(); } /** * Returns <tt>true</tt> if this list contains no elements. * * @return <tt>true</tt> if this list contains no elements */ public boolean isEmpty() { return size == 0; } /** * Returns <tt>true</tt> if this map contains no key-value mappings. * * @return <tt>true</tt> if this map contains no key-value mappings */ public boolean isEmpty() { return size == 0; }
針對以上方法,本人認為字符串判斷是否為空用StringUtils.isBlank(str );
對集合判斷還是用原生代碼list != null && list.size>0
下面將為大家演示StringUtils、CollectionUtils工具類的常用方法。
作用:常用于判斷集合中是否有元素、是否為空等
★★★ 例1 : 判斷集合是否為空: CollectionUtils.isEmpty(null); //控制臺打印:true CollectionUtils.isEmpty(new ArrayList());//控制臺打印:true CollectionUtils.isEmpty({a,b});//控制臺打印:false ★★★ 例2: 判斷集合是否不為空: CollectionUtils.isNotEmpty(null); //控制臺打印:false CollectionUtils.isNotEmpty(new ArrayList()); //控制臺打印:false CollectionUtils.isNotEmpty({a,b}); //控制臺打印:true
1.1、數據庫用戶實體
public class User implements Serializable { private Long id; //用戶ID private String name; //用戶姓名 private Integer age; //用戶年齡 ....... }
1.2、Mapper
/** * 小編(程序牛CodeCow)用的是注解方式寫sql,也可以用XML方式寫sql,看個人愛好 */ @Select("<script> " + "select * from User " + "</script>") List<User> getUserList();//獲取所有用戶
1.3、測試
@Autowired private UserMapper userMapper; List<User> list = userMapper.getUserList();//調用Mapper方法,獲取所有用戶 if(CollectionUtils.isEmpty(list )){ //使用CollectionUtils工具判斷是否為空 //此處進行為空的業務邏輯操作 }else{ //此處進行不為空的業務邏輯操作 }
1、作用:常用于判斷字符串是否為空、" "、null等
★★★ 例1:<isEmpty>判斷某字符串是否為空(為空標準:字符串為null或字符串長度為0) StringUtils.isEmpty(null); //控制臺打印:true StringUtils.isEmpty("") ; //控制臺打印:true StringUtils.isEmpty(" "); //控制臺打印:false (空格在StringUtils中作非空處理) StringUtils.isEmpty("程序牛CodeCow") //控制臺打印:false ★★★ 例2:<isNotEmpty>判斷某字符串是不為空(和例1相反) StringUtils.isNotEmpty(null); //控制臺打印:false StringUtils.isNotEmpty(""); //控制臺打印:false StringUtils.isNotEmpty(" "); //控制臺打印:true StringUtils.isNotEmpty("程序牛CodeCow"); //控制臺打印:true ★★★ 例3:<isBlank>判斷某字符串是否為空 StringUtils.isBlank(null); //控制臺打印:true StringUtils.isBlank(""); //控制臺打印: true StringUtils.isBlank(" "); //控制臺打印:true StringUtils.isBlank("程序牛CodeCow")//控制臺打印:false ★★★ 例4:<isNotBlank>判斷某字符串是不為空(和例3相反) StringUtils.isNotBlank(null);//控制臺打印:false StringUtils.isNotBlank(""); //控制臺打印:false StringUtils.isNotBlank(" "); //控制臺打印:false StringUtils.isBlank("程序牛CodeCow")//控制臺打印:true ☆☆☆☆☆ isEmpty、isBlank 都是判斷字符串是否為空,他兩有什么區別 ??? 朋友記住一點就行:isBlank 可以說更加嚴格,比如: isBlank(" ") isBlank 說我TM就說它 "為空" isEmpty(" ") isEmpty 說我TM就說它 "不為空" "朋友你懂了嗎^__^"
2.1、首先導包
//導入commons包;小編(程序牛CodeCow)用的是 lang3,推薦 <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.9</version> </dependency>
2.2、測試
1 "測試小編(程序牛CodeCow)就 不多 BB 了, 仔細看了上面的 應該都會了吧 ^__^ "
以上是“StringUtils和CollectionUtils判斷為空的方法哪個速度更快”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。