当前位置:编程学习 > JAVA >>

关于java值传递的问题

public class PassAddr {    
    public static void main(String[] args) {    
        String s=new String("old");  //1  
        method(s);  //3  
        System.out.println(s);    
    }    
    static void method(String str){    
        str=new String("new");  //2  
    }    

这个输出结果为:old
public class T { 
    public static void main(String[] args) { 
        String[] arr=new String[2]; 
        arr[0]="old_0"; 
        arr[1]="old_1"; //11
        method(arr); //14
        System.out.println(arr[0]+";"+arr[1]); 
    } 
    static void method(String[] a){//12 
            a[0]="new_0"; 
            a[1]="new_1"; //13
        } 

这个输出却是:new_0;new_1
-------------------------------------------
自己发的问题,想了半天想通了。解析下,希望各位斧正!
===================================
补充:软件开发 , Java ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,