Java中是否存在将Boolean
转换为boolean
并将Boolean
的空引用自动处理为false的实用程序方法?
答案 0 :(得分:18)
怎么样:
boolean x = Boolean.TRUE.equals(value);
?这是一个单独的表达式,如果true
为非null且表示真实的value
引用,则只会计算为Boolean
。
答案 1 :(得分:1)
我不知道它是否存在。我写了一个像一个班轮。
public static boolean getPrimitiveBoolean(Boolean bol) {
return bol ==null ? false :bol.booleanValue();
}
答案 2 :(得分:1)
在java 8上你可以这样做:
static boolean getPrimitive(Boolean value) {
return Optional.ofNullable(value).orElse(false);
}
你也可以这样做:
static boolean getPrimitive(Boolean value) {
return Boolean.parseBoolean("" + value);
}
答案 3 :(得分:0)
这是一种你可以编写的方法。如果Boolean为null,则返回false。
public static boolean toBooleanDefaultIfNull(Boolean bool) {
if (bool == null) return false;
return bool.booleanValue();
}
答案 4 :(得分:0)
您在寻找现成的实用程序吗?然后我认为Commons-Lang BooleanUtils就是答案。它有一种方法 toBoolean(Boolean bool)
答案 5 :(得分:0)
Boolean.parseBoolean
将不会处理null。会导致运行时错误
答案 6 :(得分:0)
这将同时处理null和布尔值
// Before
<Route path="/projects" exact component={Projects}/>
// After
<Route path="/projects" component={Projects}/>
答案 7 :(得分:-1)
如果您是 golfing,则后跟 automatic unboxing 的显式空检查比 canonical answer 短。
boolean b=o!=null&&o; // For golfing purposes only, don't use in production code