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

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

相关推荐

狠赚笔第一人:学计算机自己不努力怪大环境?我大一就拿到了美团大厂的offer,好好看看自己有没有努力查看图片
点赞 评论 收藏
分享
10-11 17:45
门头沟学院 Java
走吗:别怕 我以前也是这么认为 虽然一面就挂 但是颇有收获!
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务