关于成员变量存储在栈中还是堆中的问题

很多人都说是在栈中,那么下面代码输出是true,怎么解释,请大神帮忙解释下。
public class Test {
int c =100000;
public static void main(String[] args) {
// TODO Auto-generated method stub
int a = 100000;
int b = 100000;
Test t = new Test();
if(a==t.c){
System.out.println("true");
}else{
System.out.println("false");
}
}

}

全部评论
所有例如int a=10000这类直接赋值的变量是存在栈中的,每次新建一个变量会先在栈中找是否存在这个值,要是存在则将这个变量指向这个地址,若不存在则新建一个值然后将这个变量指向这个值。
点赞 回复 分享
发布于 2016-03-23 23:28
你这是数值比较,没有说明这个问题
点赞 回复 分享
发布于 2016-03-23 19:11
这就是普通的值比较,跟地址没关系
点赞 回复 分享
发布于 2016-03-23 11:47

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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