java中判斷String類型為空和null的幾種方法
在Java中,判斷一個字符串是否為空或者為 null 是一個常見的操作。以下是幾種常見的方法來實現(xiàn)這個判斷:
1. 使用 == 和 isEmpty()
這是最基礎(chǔ)的方式,用來判斷字符串是否為 null 或者為空字符串。
String str = ...;
if (str == null || str.isEmpty()) {
// 字符串為 null 或空字符串
}2. 使用 == 和 length()
另一種方式是檢查字符串的長度是否為0。
String str = ...;
if (str == null || str.length() == 0) {
// 字符串為 null 或空字符串
}3. 使用 Apache Commons Lang
如果你使用了Apache Commons Lang庫,可以使用 StringUtils 類,它提供了更加簡潔的方法。
首先,需要在你的項目中添加依賴(如果使用Maven):
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.12.0</version> <!-- 請根據(jù)需要選擇版本 -->
</dependency>然后,可以使用如下方法:
import org.apache.commons.lang3.StringUtils;
String str = ...;
if (StringUtils.isEmpty(str)) {
// 字符串為 null 或空字符串
}4. 使用 Java 11 的 isBlank()
Java 11 引入了 String 類的新方法 isBlank(),它不僅檢查字符串是否為空,還會檢查字符串是否只包含空白字符(如空格、制表符等)。
String str = ...;
if (str == null || str.isBlank()) {
// 字符串為 null、空字符串或僅包含空白字符
}5. 使用 Objects 類的 requireNonNullElse 方法
在需要提供默認值的情況下,可以使用 Objects 類的 requireNonNullElse 方法,它可以在字符串為 null 時提供一個默認值。
import java.util.Objects;
String str = ...;
str = Objects.requireNonNullElse(str, "");
if (str.isEmpty()) {
// 字符串為 null 或空字符串
}示例
import org.apache.commons.lang3.StringUtils;
public class StringTest {
public static void main(String[] args) {
String str1 = null;
String str2 = "";
String str3 = " ";
// 方法1: 使用 == 和 isEmpty()
if (str1 == null || str1.isEmpty()) {
System.out.println("str1 is null or empty");
}
if (str2 == null || str2.isEmpty()) {
System.out.println("str2 is null or empty");
}
// 方法2: 使用 == 和 length()
if (str2 == null || str2.length() == 0) {
System.out.println("str2 is null or empty");
}
// 方法3: 使用 Apache Commons Lang
if (StringUtils.isEmpty(str2)) {
System.out.println("str2 is null or empty (using StringUtils)");
}
// 方法4: 使用 Java 11 的 isBlank()
if (str3 == null || str3.isBlank()) {
System.out.println("str3 is null, empty or blank");
}
// 方法5: 使用 Objects 的 requireNonNullElse
str1 = Objects.requireNonNullElse(str1, "");
if (str1.isEmpty()) {
System.out.println("str1 is null or empty (using Objects.requireNonNullElse)");
}
}
}到此這篇關(guān)于java中判斷String類型為空和null的幾種方法的文章就介紹到這了,更多相關(guān)java String類型為空和null內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Spring Boot整合Spring Security簡單實現(xiàn)登入登出從零搭建教程
這篇文章主要給大家介紹了關(guān)于Spring Boot整合Spring Security簡單實現(xiàn)登入登出從零搭建的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧2018-09-09
如何使用spring ResponseEntity處理http響應(yīng)
這篇文章主要介紹了如何使用spring ResponseEntity處理http響應(yīng)的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-07-07
java面試常問的Runnable和Callable的區(qū)別
大家好,本篇文章主要講的是java面試常問的Runnable和Callable的區(qū)別,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下2022-01-01
Mybatis之a(chǎn)ssociation和collection用法
這篇文章主要介紹了Mybatis之a(chǎn)ssociation和collection用法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-02-02
Java中的System.arraycopy()淺復(fù)制方法詳解
這篇文章主要介紹了Java中的System.arraycopy()淺復(fù)制方法詳解,Java數(shù)組的復(fù)制操作可以分為深度復(fù)制和淺度復(fù)制,簡單來說深度復(fù)制,可以將對象的值和對象的內(nèi)容復(fù)制;淺復(fù)制是指對對象引用的復(fù)制,需要的朋友可以參考下2023-11-11

