天天看點

hive 判斷子字元串_Java 中檢查空字元串(null 或空白)的方法有幾種?1. 摘要2. 空與空白(Empty&Blank)3.空字元串4. 空白字元串5. Bean驗證6. 使用Apache Commons7. 使用Guava8. 總結

點選上方“Java基基”,選擇“設為星标”

做積極的人,而不是積極廢人!

源碼精品專欄

  • 原創 | Java 2019 超神之路,很肝~
  • 中文詳細注釋的開源項目
  • RPC 架構 Dubbo 源碼解析
  • 網絡應用架構 Netty 源碼解析
  • 消息中間件 RocketMQ 源碼解析
  • 資料庫中間件 Sharding-JDBC 和 MyCAT 源碼解析
  • 作業排程中間件 Elastic-Job 源碼解析
  • 分布式事務中間件 TCC-Transaction 源碼解析
  • Eureka 和 Hystrix 源碼解析
  • Java 并發源碼

來源:牛旦教育 toutiao.com/i6713087515768652301

  • 1. 摘要
  • 2. 空與空白(Empty&Blank)
  • 3.空字元串
    • 3.1. Java 6及以上版本
    • 3.2. Java 5及以下版本
  • 4. 空白字元串
  • 5. Bean驗證
  • 6. 使用Apache Commons
  • 7. 使用Guava
  • 8. 總結

1. 摘要

在本文中,我們将介紹些方法檢查Java中的空字元串(空的或空白符串)。我們有些語言的原生方法以及幾個庫可用。

2. 空與空白(Empty&Blank)

對于知道字元串是否為空是很常見的問題。這裡定義空字元串:是指空的或是零長度的字元串。如果一個字元串隻有空白字元,我們也稱之為空字元串。

對于Java而言,空白字元串如空格、制表符等。具體詳情可以參考Java API(*Character.isWhitespace:* https://docs.oracle.com/javase/8/docs/api/java/lang/Character.html#isWhitespace-char-)。

3.空字元串

3.1. Java 6及以上版本

如果使用JDK在Java 6及以上,那麼檢查空字元串的最簡單方法是就是子字元串的isEmpty:

如上為了確定null安全,我們在寫判空函數時,添加了額外的null檢查。

3.2. Java 5及以下版本

字元串的isEmpty方法是随Java 6引入的。對于Java 5及更低版本,我們可以使用字元串的length進行判斷,自己寫判空方法時,這樣操作:

從上代碼可知,實際上,isEmpty 隻是 length 的快捷方式。

4. 空白字元串

字元串的isEmpty 和 length 可用于檢查是否為空字元串。如果我們想想檢查是否為空白字元串,可以使用字元串的trim方法達到目的。trim方法在執行判空前,會删除開頭結尾的空白(空格)字元,我們可以這樣來寫空白字元串判定方法:

确切地說,trim将删除Unicode代碼小于或等于U+0020(「連結」)的所有前導和尾随字元。

我們知道String是不可變的,是以調用 trim 實際上不會改變底層字元串的。

5. Bean驗證

檢查空字元串的另一種方法是用正規表達式。這對于Java Bean驗證來說非常友善:

@Pattern(regexp = 
           

給定的正規表達式會確定空字元串或空白符串無效。

6. 使用Apache Commons

如果可以添加依賴項,我們可以使用 Apache Commons Lang(Lang – Home)。這是個很有用的Java工具。

如果我們使用Maven,我們需要添加的公地lang3依賴 于我們的POM:

<dependency>
           

除此之外,這個工具類庫還提供了StringUtils 類,這個類帶有像isEmpty,isBlank等方法:

此調用與我們自己的 isBlankString 方法相同。它是null安全的并且還檢查空格。

7. 使用Guava

另一很知名的類庫是google的Guava所包含的字元串工具類。從版本23.1開始,有兩種Guava:android 和jre。Android風格針對Android和Java 7,而JRE風格适用于Java 8。

如果我們不針對Android目标,我們可以将JRE風格的Guava添加到我們的pom中:

<dependency>
           

Guava的 Strings類附帶了一個方法Strings.isNullOrEmpty:

它檢查給定字元串是null還是空的,但不檢查全空白字元串。

8. 總結

以上為幾種方法來檢查字元串是否為空。通常想檢查字元串是否為空白的,這意味着它隻包含空格字元。

最友善的方法是使用Apache Commons Lang,它提供諸如StringUtils.isBlank之類的幫助類。如果要堅持使用普通Java,我們可以将字元串原生的trim與isEmpty或length組合使用。對于Bean驗證,可以使用正規表達式。

好了。比較基礎的内容,就寫到這裡了 ,分享出去吧。

歡迎加入我的知識星球,一起探讨架構,交流源碼。加入方式,長按下方二維碼噢:

hive 判斷子字元串_Java 中檢查空字元串(null 或空白)的方法有幾種?1. 摘要2. 空與空白(Empty&amp;Blank)3.空字元串4. 空白字元串5. Bean驗證6. 使用Apache Commons7. 使用Guava8. 總結

已在知識星球更新源碼解析如下:

hive 判斷子字元串_Java 中檢查空字元串(null 或空白)的方法有幾種?1. 摘要2. 空與空白(Empty&amp;Blank)3.空字元串4. 空白字元串5. Bean驗證6. 使用Apache Commons7. 使用Guava8. 總結
hive 判斷子字元串_Java 中檢查空字元串(null 或空白)的方法有幾種?1. 摘要2. 空與空白(Empty&amp;Blank)3.空字元串4. 空白字元串5. Bean驗證6. 使用Apache Commons7. 使用Guava8. 總結
hive 判斷子字元串_Java 中檢查空字元串(null 或空白)的方法有幾種?1. 摘要2. 空與空白(Empty&amp;Blank)3.空字元串4. 空白字元串5. Bean驗證6. 使用Apache Commons7. 使用Guava8. 總結

最近更新《芋道 SpringBoot 2.X 入門》系列,已經 20 餘篇,覆寫了 MyBatis、Redis、MongoDB、Elasticsearch、分庫分表、讀寫分離、SpringMVC、SpringWebflux、WebSocket、性能測試等等内容。

提供近 2W 行代碼的 SpringBoot 示例,以及超 4W 行代碼的電商微服務項目。

擷取方式:點“在看”,關注公衆号并回複 666 領取,更多内容陸續奉上。

如果你喜歡這篇文章,喜歡,轉發。

生活很美好,明天見(。・ω・。)ノ♡

繼續閱讀