null和isEmpty有什么区别?

时间:2019-06-18 15:49:40

标签: android

我想了解null和isEmpty()之间的区别是什么。那两个是相同还是不同?

3 个答案:

答案 0 :(得分:0)

当然,null和isEmpty()是不同的。

这是区别的简单说明:

让我们以一个字符串为例。

Null表示您的对象(字符串)尚未实例化。它仍然没有指向任何对象。 isEmpty()是一种检查String是否不包含字符的方法。

您可以尝试制作2个不同的String对象,其中一个String定义为null,而另一个则为空,如下所示。

String nullString = null;
String emptyString = "";

try {
    System.out.println(nullString); // will produce NullPointerException
    nullString.isEmpty(); // will produce NullPointerException
} catch (NullPointerException e) {
    System.out.println(emptyString); // OUTPUT:  (empty)
    emptyString.isEmpty(); // OUTPUT: true
}

我希望这很清楚。 -CMIIW-

答案 1 :(得分:0)

假设我们有一个字符串变量“ s”,其值为空,

s == null and s.isEmpty()

会给您两个不同的答案,即

s == null

将给出输出“真”

s.isEmpty()

将为您提供输出“ NullPointerException”

或者,如果字符串s =“”,

s == null 将为您提供输出“ false” s.isEmpty()将为您提供输出“ true”

变量“ s”的任何其他字符串值(例如 s =“ java” )都会导致 s == null s.isEmpty() 导致输出“假”

答案 2 :(得分:0)

您可以这样考虑:

isEmpty()-根据某物的长度返回布尔值(真/假)。

null -空无,它不是任何实例,如果为空,则不会返回true / false。

有关更多信息,您可以检查this thread