java,数组,在堆中?==返回false?

以下输出为何是false,true ?(jdk1.8)
{"A", "C", "D"};在堆中存储了两份?
1在常量池中存储了一份?
#Java#
全部评论
数组在堆里又不是常量池,数组的完全写法是new String[]{}看见new的都是在堆里实例化,数组不是对象,但是可以当做对象理解
点赞 回复 分享
发布于 2019-06-13 01:51
数组也是对象,这种是利用了数组的初始化器隐式地创建了一个数组对象
点赞 回复 分享
发布于 2019-06-12 20:39
数组初始化的时候相当于是new了一个新的对象吧,我猜的
点赞 回复 分享
发布于 2019-06-12 20:29
第二个是true的原因是缓存机制
点赞 回复 分享
发布于 2019-06-12 20:23
integer缓存机制,去看看
点赞 回复 分享
发布于 2019-06-12 20:23

相关推荐

白火同学:能。我当初应届沟通了1200,收简历50,面试10左右吧,加油投吧
点赞 评论 收藏
分享
06-02 15:53
阳光学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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