既然是对象的引用,为什么不行呢? new String("xxx")返回的是一个对象的应用所以arr[1]=new String("xxx");实际上是把arr[1]指向"xxx" 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 String[] arr =new String[2]; String str ="xxx"; arr[1]=str; arr[0]=arr[1]; System.out.println(arr[0]+" "+arr[1]);// xxx xxx xx="YY"; System.out.println(arr[0]+" "+arr[1]);// xxx xxx既然都是引用的str,为什么str变了之后,arr[0],arr[1]都不变呢? //上面有一变量写错了。 String[] arr =new String[2]; String str ="xxx"; arr[1]=str; arr[0]=arr[1]; System.out.println(arr[0]+" "+arr[1]);// xxx xxx str="YY"; System.out.println(arr[0]+" "+arr[1]);// xxx xxx既然都是引用的str,为什么str变了之后,arr[0],arr[1]都不变呢? String[] arr =new String[3]; arr[0]=arr[1]; System.out.println(arr[0]);//这是null,可以理解/*在这儿数组1与0都指向null*/ arr[1]=new String("xxx");/*这儿数组1改变了自己对象,但数组0没有发生变化,仍指向null*? System.out.println(arr[0]);//是什么呢?为何还是null 假设null的内存地址为0000执行这一句后arr[0]=arr[1];两个数组指向的地址都是0000执行这一句arr[1]=new String("xxx");arr[1]的地址变成了新的,而arr[0]仍指向0000这个地址 System.getProperty("prop.custom"); 什么意思? 怎样随机的把几个固定位置的点都画一遍 求救 关于javamail的folder.create()... 求助,WORD文件内字符替换问题 循环的效率问题 哪儿有入门级的书下载最好是有仔细讲语法的,谢谢! Bean中如何與數據庫邊結??? 对于用jni函数传过来的字符,要怎样处理,才能正确显示中文? ActionEvent小问题 请看过core java的朋友指点一下,谢谢! 包和文件夹有什么区别?
String str ="xxx";
arr[1]=str;
arr[0]=arr[1];
System.out.println(arr[0]+" "+arr[1]);// xxx xxx
xx="YY";
System.out.println(arr[0]+" "+arr[1]);// xxx xxx既然都是引用的str,为什么str变了之后,arr[0],arr[1]都不变呢?
String[] arr =new String[2];
String str ="xxx";
arr[1]=str;
arr[0]=arr[1];
System.out.println(arr[0]+" "+arr[1]);// xxx xxx
str="YY";
System.out.println(arr[0]+" "+arr[1]);// xxx xxx既然都是引用的str,为什么str变了之后,arr[0],arr[1]都不变呢?
arr[0]=arr[1];
System.out.println(arr[0]);//这是null,可以理解
/*在这儿数组1与0都指向null*/ arr[1]=new String("xxx");
/*这儿数组1改变了自己对象,但数组0没有发生变化,仍指向null*?
System.out.println(arr[0]);//是什么呢?为何还是null
执行这一句后arr[0]=arr[1];两个数组指向的地址都是0000
执行这一句
arr[1]=new String("xxx");
arr[1]的地址变成了新的,而arr[0]仍指向0000这个地址