Boolean.valueOf()和 Java 1.5 autoBoxing之间的更好的做法是从布尔值创建布尔值,为什么?

解决方法

布尔的自动装箱由编译器透明地转换为Boolean.valueOf():
boolean b = true;
Boolean bb = b;

被翻译成:

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()除了额外输入外没有给你任何东西,你应该以自动装箱为目标.

当您考虑相反的转换时,情况会变得复杂 – 从布尔值到布尔值.这次,编译器会透明地调用Boolean.booleanValue(),从理论上讲会导致NullPointerException.

使用Boolean.valueOf()方法vs(或Java 1.5 autoboxing)创建Boolean对象的更多相关文章

  1. ios – 将两个字符串转换为一组布尔值的快速方法是什么?

    我有一个长字符串,我想转换为一个布尔值数组.而且它需要很多次,很快.我天真的尝试是这样的:但这比我想要的要慢很多.我的剖析告诉我,地图是减速的地方,但我不知道我能做多么简单.我觉得如果没有Swift’s/ObjC的开销,这样做会很快.在C中,我认为这是一个简单的循环,其中一个字节的内存与一个常量进行比较,但我不知道我应该看的是什么函数或语法.有更好的办法吗?

  2. Swift语法基础:10 - Swift的布尔值, 元组, 可选, 断言

    3.一个可选值现在是nil,但是后面的代码运行需要一个非nil值。

  3. swift – 检查可选Bool的值

    如果我使用可选Bool,我总是需要做如果boolean==true?因为Optionals不再符合BooleanType,编译器不知道我想检查Bool的值吗?

  4. 2.1 Swift的(Boolean)布尔类型 [Swift原创教程]

    这里声明了一个值为true的常量,该常量被推测为布尔类型,因为它被布尔值所初始化。在判断语句中,只能对布尔类型进行判断。

  5. swift – 多个让一个守卫声明和一个let一样吗?

    这些在Swift3中有所不同.在这种情况下:你说’可选–解开foo吧.如果成功,可选择将taco打包成qux.如果成功继续.其他……

  6. swift – 可选布尔值的隐式展开

    Bool类型的隐含展开似乎不起作用:如果我已经声明了一个类似于varaBoolean的Boolean:Bool?,那么这将是预期的行为,但在这里,我没有得到它.这是正确的行为吗?我没有找到任何文档.谢谢!

  7. android – 在AppWidget Provider中获取首选项

    我似乎无法从appwidgetprovider类中读取首选项.我的代码在Activity中工作,但它不在appwidgetprovider中.这是我用来回读布尔值的代码:但是,我得到“方法getSharedPreferences(String,int)未定义类型小部件”错误(小部件是我的appwidgetprovider类的名称).在此先感谢您的任何建议!解决方法getSharedPreferen

  8. android – 在日志中打印布尔值

    我可以打印字符串值,但我不知道如何在日志消息中打印布尔值.解决方法是.要么

  9. PHP 布尔值的自增与自减的实现方法

    这篇文章主要介绍了PHP 布尔值的自增与自减的实现方法,非常不错,具有参考借鉴价值,需要的朋友参考下吧

  10. Wix布尔属性值不起作用

    我有以下财产:UI中的一个复选框绑定到该属性:以及根据此属性的值执行某项操作的自定义操作如果我尝试从命令行为UPDATEDB传递值0:要么无论如何都要检查复选框的值.也就是说,传入的0似乎得到了尊重,RunDbMigration动作没有运行……这里发生了什么?正如其他人所提到的,CheckBox在1/0意义上不是布尔值,它们在null/not-null意义上是布尔值.要从命令行取消设置–您可能希望使用类似的东西在执行自定义操作之前,您的条件可能是专门针对值1,这就是您的CA未运行的原因.

随机推荐

  1. 基于EJB技术的商务预订系统的开发

    用EJB结构开发的应用程序是可伸缩的、事务型的、多用户安全的。总的来说,EJB是一个组件事务监控的标准服务器端的组件模型。基于EJB技术的系统结构模型EJB结构是一个服务端组件结构,是一个层次性结构,其结构模型如图1所示。图2:商务预订系统的构架EntityBean是为了现实世界的对象建造的模型,这些对象通常是数据库的一些持久记录。

  2. Java利用POI实现导入导出Excel表格

    这篇文章主要为大家详细介绍了Java利用POI实现导入导出Excel表格,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  3. Mybatis分页插件PageHelper手写实现示例

    这篇文章主要为大家介绍了Mybatis分页插件PageHelper手写实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  4. (jsp/html)网页上嵌入播放器(常用播放器代码整理)

    网页上嵌入播放器,只要在HTML上添加以上代码就OK了,下面整理了一些常用的播放器代码,总有一款适合你,感兴趣的朋友可以参考下哈,希望对你有所帮助

  5. Java 阻塞队列BlockingQueue详解

    本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景,通过实例代码介绍了Java 阻塞队列BlockingQueue的相关知识,需要的朋友可以参考下

  6. Java异常Exception详细讲解

    异常就是不正常,比如当我们身体出现了异常我们会根据身体情况选择喝开水、吃药、看病、等 异常处理方法。 java异常处理机制是我们java语言使用异常处理机制为程序提供了错误处理的能力,程序出现的错误,程序可以安全的退出,以保证程序正常的运行等

  7. Java Bean 作用域及它的几种类型介绍

    这篇文章主要介绍了Java Bean作用域及它的几种类型介绍,Spring框架作为一个管理Bean的IoC容器,那么Bean自然是Spring中的重要资源了,那Bean的作用域又是什么,接下来我们一起进入文章详细学习吧

  8. 面试突击之跨域问题的解决方案详解

    跨域问题本质是浏览器的一种保护机制,它的初衷是为了保证用户的安全,防止恶意网站窃取数据。那怎么解决这个问题呢?接下来我们一起来看

  9. Mybatis-Plus接口BaseMapper与Services使用详解

    这篇文章主要为大家介绍了Mybatis-Plus接口BaseMapper与Services使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  10. mybatis-plus雪花算法增强idworker的实现

    今天聊聊在mybatis-plus中引入分布式ID生成框架idworker,进一步增强实现生成分布式唯一ID,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

返回
顶部