首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Boolean.valueOf()方法vs (或Java1.5自动装箱)创建布尔对象

使用Boolean.valueOf()方法vs (或Java1.5自动装箱)创建布尔对象
EN

Stack Overflow用户
提问于 2012-07-27 00:36:52
回答 1查看 1.3K关注 0票数 8

Boolean.valueOf()Java 1.5 autoboxing之间,从booleans创建Boolean的最佳实践是什么?为什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-27 00:38:35

编译器会将boolean的自动装箱透明地转换为Boolean.valueOf()

代码语言:javascript
复制
boolean b = true;
Boolean bb = b;

翻译为:

代码语言:javascript
复制
iconst_1
istore_1            //b = 1 (true)
iload_1             //b
invokestatic    #2; //Method java/lang/Boolean.valueOf:(Z)Ljava/lang/Boolean;
astore_2            //bb = Boolean.valueOf(b)

使用您认为更有用和更具可读性的文档。由于使用Boolean.valueOf()不会给您带来额外的输入,因此您的目标应该是自动装箱。

当你考虑从Booleanboolean的相反转换时,情况就变得复杂了。这一次,编译器会透明地调用Boolean.booleanValue(),这在理论上会导致NullPointerException

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11673954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档