2010-06-07 62 views
1
var array1:Array = new Array(); 
var array2:Array = new Array(); 

var obj1:Object = new Object(); 

array1.push(obj1); 
array2.push(obj1); 


if i change something in obj1 will array1[0] and array2[0] also change? 
+0

這個問題很簡單直接,如果你自己編寫了代碼並進行了測試,它會更容易。 – 2010-06-07 07:34:19

回答

0

是的。在ActionScript 3.0中,所有參數都通過引用傳遞。因此,您將對obj1的引用傳遞給兩個數組。更改對象中的值將反映在array1和array2中。

0

是的。它會改變。

0

你有兩個名單,都存儲在一個班的學生姓名 - 例如,按字母順序排列,其他按照他們的年齡的順序。如果學生通過了一次考試,那麼這兩份名單中的相應學生是否會通過考試或只有其中一名考生?

兩者都指同一名學生 - 同一名學生Object

現在說你從他的答題紙上寫下一個學生的標記到一些紙上。如果學生擦除並更新該論文的價值,他的真實標記是否改變?不,因爲那只是商標的複製價值。這類似於將student.mark複製到數字變量並更改它。