读书人

引用之间的有关问题赋值有关问题

发布时间: 2012-01-02 22:40:04 作者: rapoo

引用之间的问题赋值问题
class Test
{
public static void main(String[] args)
{
String s1= "myone ";
String s2=s1;
System.out.println( "s1= "+s1);
System.out.println( "s2= "+s2);
System.out.println( "============ ");
s1= "mytwo ";
System.out.println( "s1= "+s1);
System.out.println( "s2= "+s2);
}
}
//s1的改变是否影响s2;有的说影响但测试无关哦.???

[解决办法]
应该没影响吧,第二次又没有把值再付给s2
[解决办法]
看不出s1的改变影响s2的理由,不会影响
[解决办法]
没有影响,JAVA
String s1= "myone ";\\把myone的地址给S1
String s2=s1;\\把S1的地址给S2
System.out.println( "s1= "+s1);
System.out.println( "s2= "+s2);
System.out.println( "============ ");
s1= "mytwo "\\把mytwo的地址给S1 ,S2仍然指向myone
System.out.println( "s1= "+s1);
System.out.println( "s2= "+s2);
[解决办法]
没有影响
s1和s2的引用不一样,对象也不一样!
你可以运行测测!
[解决办法]
这里当然没有影响..你改变了s1的引用..将其引用到内存上的 "mytwo "上...原有的 "myone "没有发生变化...s2的值当然没有变化

读书人网 >J2SE开发

热点推荐