java中判断String类型为空和null的方法

1.判断一个String类型的变量是否为空(即长度为0)或者为null

在Java中,判断一个String类型的变量是否为空(即长度为0)或者为null,通常需要使用两个条件语句来进行检查。这是因为null表示变量没有引用任何对象,而空字符串("")表示变量引用了一个没有内容的字符串对象。

下面是一个具体的代码示例,展示了如何判断一个String变量是否为空或null

java 复制代码
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或空("")的逻辑,以及一个辅助方法用于安全地获取字符串或默认值:

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

相关推荐
何以解忧,唯有..5 分钟前
Python time 模块详解:时间处理与日期操作指南
开发语言·python
caimouse12 分钟前
ReactOS 窗口系统分析(20):光标与图标 — cursoricon.c
c语言·开发语言
lisin-lee-cooper31 分钟前
简单聊聊 OpenFeign 框架源码
java·微服务
Buke..1 小时前
【APP 逆向】哔哩哔哩 sign 参数逆向(下):OLLVM 混淆还原 sign 算法
java·javascript·爬虫·python·算法
半生过往1 小时前
前端学 Java 课程笔记
java·前端·笔记
longxiaozhang61 小时前
C#运算符重载:让对象也能使用“加减乘除”
开发语言·c#
mmsx2 小时前
基于 Android 的校园信息管理系统源码
android·java·okhttp
mounter6252 小时前
GCCRS 突破与 Rust 入核:Linux 工具链的重大变革
linux·开发语言·rust·linux kernel·kernel
Buke..2 小时前
【APP 逆向】哔哩哔哩 sign 参数逆向(上):Frida 反调试绕过与 unidbg 调用
java·开发语言·爬虫·python·安卓
竹枝溪2 小时前
Tomcat与Servlet全套小白教程
java·servlet·tomcat·cookie·filter·session·listener