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;有的说影响但测试无关哦.???

解决方案 »

  1.   

    没有影响,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);
      

  2.   

    这里当然没有影响..你改变了s1的引用..将其引用到内存上的"mytwo"上...原有的"myone"没有发生变化...s2的值当然没有变化