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
方法来安全地获取字符串或返回默认值。