Java中沒有C#的out關鍵字,但可以通過數組實現類似的效果


其實傳遞的就是數組的指針,里面的每一項的值還是那塊內存,所以能直接操作里面的值。如果單純傳指定的值,那么里面操作的就是新的一塊內存塊。

用數組實現的效果如下:

class B{  
      
    String cnt=null;  
      
    public static void main(String[] args) {  
        B t=new B();//實例化一個對象  
          
        String a=null;  
        String[]s=new String[1];  
        B b=new B();  
        Object o=null;  
          
        t.test1(a);  
        System.out.println("原子類型實現的結果:"+a);//原子類型實現的結果:null  
          
        t.test2(b);  
        System.out.println("引用類型實現的結果:"+b.cnt);//引用類型實現的結果:bbbbbb  
          
        t.test3(s);  
        System.out.println("數組類型實現的結果:"+s[0]);//數組類型實現的結果:sssssssss   
          
        t.test4(o);  
        System.out.println("數組類型實現的結果:"+String.valueOf(o));//數組類型實現的結果:null   
    }  
      
    public void test1(String a){  
        a="aaaaaaaa";  
    }  
      
    public void test2(B b){  
        b.cnt="bbbbbb";  
    }  
      
    public void test3(String[] s){  
        s[0]="sssssssss";  
    }  
      
    public void test4(Object o){  
        o="sssssssss";  
    }  
}  

 

參考:

http://blog.csdn.net/hemeinvyiqiluoben/article/details/49978313

http://hualong.iteye.com/blog/351467


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM