1.判斷一個String
型別的變數是否為空(即長度為0)或者為null
在Java中,判斷一個String
型別的變數是否為空(即長度為0)或者為null
,通常需要使用兩個條件語句來進行檢查。這是因為null
表示變數沒有引用任何物件,而空字串("")表示變數引用了一個沒有內容的字串物件。
下面是一個具體的程式碼示例,展示瞭如何判斷一個String
變數是否為空或null
:
public class StringCheckExample {
public static void main(String[] args) {
// 定義一個可能為null或空的String變數
String myString = null; // 我們可以根據需要更改這個變數的值
// 判斷String是否為null或空
if (myString == null || myString.isEmpty()) {
System.out.println("The string is null or empty.");
} else {
System.out.println("The string is not null and not empty. Its value is: " + myString);
}
// 注意:如果myString是null,直接呼叫myString.isEmpty()會丟擲NullPointerException
// 因此我們需要先檢查myString是否為null
}
// 額外的方法,用於安全地檢查String是否為空或null,並返回一個預設值
public static String safeGetString(String input, String defaultValue) {
return (input == null || input.isEmpty()) ? defaultValue : input;
}
// 使用safeGetString方法的示例
public static void testSafeGetString() {
String myString = null; // 或者 "",或者任何其他的String值
String result = safeGetString(myString, "Default Value");
System.out.println("The result is: " + result);
}
}
在這個示例中,main
方法展示瞭如何直接判斷一個String
變數是否為空或null
。而safeGetString
方法則是一個實用工具方法,它接受一個String
輸入和一個預設值,如果輸入為null
或空,則返回預設值,否則返回輸入值本身。在testSafeGetString
方法中,我們展示瞭如何使用這個實用工具方法。
2.完整的程式碼示例
以下是一個完整的Java程式碼示例,其中包含了判斷String
是否為null
或空("")的邏輯,以及一個輔助方法用於安全地獲取字串或預設值:
public class StringNullOrEmptyCheck {
public static void main(String[] args) {
// 示例1:測試一個為null的字串
String string1 = null;
checkString(string1);
// 示例2:測試一個空字串
String string2 = "";
checkString(string2);
// 示例3:測試一個非空非null的字串
String string3 = "Hello, World!";
checkString(string3);
// 使用safeGetString方法
String safeString1 = safeGetString(string1, "預設值");
System.out.println("safeString1: " + safeString1);
String safeString2 = safeGetString(string2, "預設值");
System.out.println("safeString2: " + safeString2);
String safeString3 = safeGetString(string3, "預設值");
System.out.println("safeString3: " + safeString3);
}
/**
* 檢查字串是否為null或空
*
* @param input 待檢查的字串
*/
public static void checkString(String input) {
if (input == null || input.isEmpty()) {
System.out.println("字串是null或空。");
} else {
System.out.println("字串不是null也不是空。其值為: " + input);
}
}
/**
* 安全地獲取字串或返回預設值
*
* @param input 待檢查的字串
* @param defaultValue 預設值
* @return 輸入字串(如果非null且非空),否則返回預設值
*/
public static String safeGetString(String input, String defaultValue) {
return (input == null || input.isEmpty()) ? defaultValue : input;
}
}
在這個程式碼中,main
方法分別測試了三種情況:null
字串、空字串和非空非null
字串。對於每種情況,都呼叫了checkString
方法來檢查結果。此外,還展示瞭如何使用safeGetString
方法來安全地獲取字串或返回預設值。