出个JAVA面试题,试试深浅?

a = new Boolean(false)    

b = new Boolean(false)    

a == b ?    

a == false ?    

why ?
全部评论
a == b的结果是false,因为它们是两个不同的对象,即使它们的值相同,它们在内存中的地址是不同的。 a == false的结果也是false,因为a是一个Boolean对象,它和false(一个布尔类型的基本类型)在内存中的类型和值都是不同的。这种比较方式不是Java中比较Boolean对象的通用方法。如果想要比较一个Boolean对象和一个布尔类型的基本类型,可以使用equals()方法进行比较。
1 回复 分享
发布于 2023-03-23 15:08 日本
两个都是true啊...
点赞 回复 分享
发布于 2023-05-04 21:38 浙江
进一步提问,如果此时 a 运行中赋值为null,a == false 会抛出什么异常,why?
点赞 回复 分享
发布于 2023-03-23 15:24 北京

相关推荐

程序员小白条:你是沟通了900个,不是投了900份简历,你能投900份,意味着对面都要回复你900次,你早就找到实习了,没亮点就是这样的,别局限地区,时间投的也要早,现在都要7月了
点赞 评论 收藏
分享
评论
3
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务