如何检查布尔值是否为null?因此,如果我知道“ hideInNav”为空。如何阻止它进一步执行?像下面这样的东西似乎不起作用,但是为什么呢?
boolean hideInNav = parent.getProperties().get("hideInNav", false);
String hideNavigation = hideInNav != null ? hideInNav : "";
如何检查布尔值是否为null?因此,如果我知道“ hideInNav”为空。如何阻止它进一步执行?像下面这样的东西似乎不起作用,但是为什么呢?
boolean hideInNav = parent.getProperties().get("hideInNav", false);
String hideNavigation = hideInNav != null ? hideInNav : "";
Answers:
boolean只能是true或false因为它是原始数据类型(+boolean变量的默认值为false)。Boolean如果要使用null值,则可以改用类。布尔是一种引用类型,这就是您可以分配null给布尔“变量”的原因。例:
Boolean testvar = null;
if (testvar == null) { ...}
hideInNav保存对一个Boolean对象的引用并且可以被null引用(未分配引用)。因此,您可以检查参考是否为null。
                    Boolean.TRUE.equals(xxx)
                    唯一可以是anull的是非Primitiite。
甲boolean这只能承载TRUE或FALSE是一个基元。内存中的TRUE/FALSE实际上是数字(0和1)
0 =假
1 = TRUE
因此,当您实例化对象时,它将为null
String str; // will equal null
另一方面,如果实例化图元,则会将其分配为默认值0。
boolean isTrue; // will be 0
int i; // will be 0
Boolean,“ A Booleanwhich ...”中的大写字母。类型的变量boolean只能容纳true和false,但是类型的变量可以Boolean容纳Boolean对象或null。
                    boolean 是基本类型,因此不能为null。
其盒装类型Boolean可以为null。
该函数可能返回aBoolean而不是a boolean,因此将结果分配给Boolean-type变量将允许您测试是否为空。
boolean是Java中的原始数据类型,并且原始数据类型不能像其他原始int,float等一样为null,如果未分配,则它们应包含默认值。
在Java中,只能将对象分配为null,这意味着相应的对象没有引用,因此在内存中不包含任何表示形式。
因此,如果要使用null作为对象,则应使用布尔类,该布尔类将原始布尔类型值包装在其对象内。
这些在Java中称为包装器类
例如:
Boolean bool = readValue(...); // Read Your Value
if (bool  == null) { do This ...}