请教!关于java堆栈和数据存储的问题?

snyy20 snyy20 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

我知道JAVA中基本数据类型直接放在栈中,而用new关键字产生的对象的值放在堆中,栈中放一份此对象堆中地址的引用。


我现在有一点不明白,看如下java代码:

int i=10;
int j=10;
System.out.print(i==j);

不用说,上面的输入出是:true;

问题是:上面声明了两个变量,都给了初始值,栈应该为它们分配两个地址才对啊?
i==j 只有在引用同一个栈地址时,才会返回true;这是为什么?还是栈有其它的处理方式?

请各位高手赐教!!!


...全文

相关推荐

评论 22
收藏 已收藏
分享
返回顶部
snyy20
Java SE 62,620 成员 307,251 内容