问个非常嫩的问题?

菜菜菜菜 2011-07-22 08:11:12
int a=1;
int b = a;
a=2;
为什么b还是等于一
java虽说是没有指针,但是B不也应该指向A的内存地址存储的值嘛
...全文
166 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
daijope 2011-08-07
  • 打赏
  • 举报
回复
不要钻牛角尖,规则+你的理解。
daijope 2011-08-07
  • 打赏
  • 举报
回复
基本数据类型呢,,呵呵,,
lz_liangjie 2011-08-04
  • 打赏
  • 举报
回复
int b=a只是给b赋了值,并没应用A呀。
luohuijun619 2011-08-04
  • 打赏
  • 举报
回复
简单的赋值,int类型不是引用类型
HoneyShou 2011-07-30
  • 打赏
  • 举报
回复
看一下值传递和引用传递就知道了
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 byte_z 的回复:]
楼主有所不知啊,对于引用型变量(比如数组,类的对象等)这样的赋值才是将a的引用付给b(这里的引用类似于c语言中的地址),而对于基本数据类型,则只是将a的值付给变量b。你滴明白?
[/Quote]

+1
woyesyes 2011-07-29
  • 打赏
  • 举报
回复
代码执行的 顺序是什么

int a=1; //首先 a=1
int b = a; 然后把a=1赋值给 b这时候在内存常量池中 有两个对象a 和 b 且都等于1
a=2; //然后这个 地方 a = 2了在常量池中a就变成了2 而b没有什么给它赋值所有等于1了

这个是基本对象 不是引用对象 楼主可以去看下 基本对象咯非基本对象在内存中的分布图。
zhangxr123 2011-07-26
  • 打赏
  • 举报
回复
简单的值赋值
wct357110558 2011-07-25
  • 打赏
  • 举报
回复
int 值类型的 b=a 赋值后 a的改变不影响b
mushuangli 2011-07-25
  • 打赏
  • 举报
回复
学习……
飞跃颠峰 2011-07-24
  • 打赏
  • 举报
回复
int是基本数据类型
所以b=a之后,内存中有两个1
zhan7505201 2011-07-24
  • 打赏
  • 举报
回复
学习。
xing_6 2011-07-23
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 byte_z 的回复:]
楼主有所不知啊,对于引用型变量(比如数组,类的对象等)这样的赋值才是将a的引用付给b(这里的引用类似于c语言中的地址),而对于基本数据类型,则只是将a的值付给变量b。你滴明白?
[/Quote]
+1
剑神一笑 2011-07-22
  • 打赏
  • 举报
回复
String[] str = {"1","2"};
String[] str1 = str;
str[0] = "2";
System.out.println(str1[0]);

这样子就会将str1里面的值改变了
byte_z 2011-07-22
  • 打赏
  • 举报
回复
楼主有所不知啊,对于引用型变量(比如数组,类的对象等)这样的赋值才是将a的引用付给b(这里的引用类似于c语言中的地址),而对于基本数据类型,则只是将a的值付给变量b。你滴明白?
剑神一笑 2011-07-22
  • 打赏
  • 举报
回复
int b = a;
这种只是单纯的赋值
a后面的改变对b不造成影响

51,408

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧