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

相关推荐

点赞 评论 收藏
分享
11-15 18:39
已编辑
西安交通大学 Java
全村最靓的仔仔:卧槽,佬啥bg呢,本也是西交么
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务