我正在從C++轉移到Java,並且我有一個問題,就是在Java中,數組持續在創建它的方法之外。看看下面這段簡單的代碼:Java:作爲參考類型的數組,在方法
public static int[] arrayMethod(){
int[] tempArray = {1, 2, 3, 4};
return tempArray;
}
public static void main(String[] args){
int arr[] = arrayMethod();
for(int i : arr){
System.out.println(i);
}
}
在C++中,除非數組是動態與new
運營商分配,數組不會調用之後,因爲它是在方法本地創建的存在。據我瞭解,Java總是按值傳遞,而數組是引用類型,所以我的C++邏輯會告訴我,我正在返回一個對本地創建數組的引用。我錯過了什麼?
垃圾收集。 – Pubby 2013-03-03 07:21:56