返回信息流class example
{
public static void main(String[] args)
{
int a[]={1,2,3}; int b[]; b=a; b[2]=100;
System.out.printf("a[2]=%-3d\n,a[2]);
}
}
我想问一下为什么 a[2]的输出是100 而不是 3 啊?
这是一条镜像帖。来源:北邮人论坛 / java / #21625同步于 2012/3/5
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
新手求助~~~~~~~~java中数组赋值的一个问题
feibingbing
2012/3/5镜像同步9 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
【 在 bixiaopeng 的大作中提到: 】
: b=a;
: 这一句已经让ab指向同一个对象了,接下来你对b操作其实和对a操作是完全一样的。
哦,意思是说 b=a 不是把a的值赋给b么? 是说数组里面的“=”号含义和一般的赋值不同么? 谢谢你了 呵呵
是赋值,数组是对象,赋的值是对象的引用
【 在 feibingbing (兵兵) 的大作中提到: 】
: 哦,意思是说 b=a 不是把a的值赋给b么? 是说数组里面的“=”号含义和一般的赋值不同么? 谢谢你了 呵呵
数组是对象,b=a是把a的引用赋给b
要是学过C的话应该会很好理解的
【 在 feibingbing (兵兵) 的大作中提到: 】
: class example
: {
: public static void main(String[] args)
: ...................
【 在 bixiaopeng 的大作中提到: 】
: 只要不是基本类型,JAVA的=都是引用赋值。
: 说白了就是除了基本类型,你看到的都是指针。。。
thx!!!!!!!!!!!!
【 在 MasterYODA 的大作中提到: 】
: 数组是对象,b=a是把a的引用赋给b
: 要是学过C的话应该会很好理解的
THX!!!!!!!