java中值傳遞和引用傳遞


java中方法內部修改變量說明:

1、對於基本類型參數,在方法體內對參數進行重新賦值,並不會改變原有變量的值

2、對於引用類型參數,在方法體內對參數進行重新賦予引用,並不會改變原有變量所持有的引用。 

3、方法體內對參數進行運算,不影響原有變量的值。 

4、方法體內對參數所指向對象的屬性進行操作,將改變原有變量所指向對象的屬性值。 
--------------------- 


public class Main {

private static void getMiddleOne(boolean b, Boolean boo, Boolean[] arr){
b = true; //形參,不會改變原有值
boo = new Boolean(true); //引用變量的直接操作相當於值傳遞,不會改變原來的引用變量
arr[0] = true; //引用變量的屬性的操作,會改變原有引用的屬性,相當於傳址調用
}

//測試
public static void main(String[] args) {
boolean b = false;
Boolean boo = new Boolean(false);
Boolean[] arr = new Boolean[]{false};

getMiddleOne(b, boo, arr);

System.out.println(b);
System.out.println(boo.toString());
System.out.println(arr[0]);

/**
* output:
* false
* false
* true
*/
}

 


免責聲明!

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



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