是否將參數傳遞到方法(使用Java)定義的順序?例如,在代碼段將參數傳遞給方法的順序(Java)
Arrays.equals(ascendingSegment, Arrays.sort(ascendingSegment))
這是用來檢查一個數組其實是在有序的上升,我在保證原來的數組傳入排序方法被調用之前就可以了?
編輯: 似乎有點誤解。在第一個參數傳遞之前,equals
方法在排序之前是否獲取了ascendingSegment的副本,或者是第一次調用的排序?給定一個數組,例如{1, 5, 2, 4}
,equals方法是否會收到{1, 5, 2, 4}
和{1, 2, 4, 5}
作爲參數或{1, 2, 4, 5}
的兩個副本?
是的,但在這些情況下,數組實際上是一個指針,而不是實際值。因此,指針的值將被複制,但它仍然指向相同的數組 – FeifanZ 2011-04-22 15:13:51
事實上,Java期望每個參數都會顯示一個值。由於這個原因,你的例子中的所有參數在被傳遞之前都會被評估。 – KushalP 2011-04-22 15:17:18
謝謝。這是一個地方。但是排序之前複製的第一個參數?換句話說,是否將參數值與實際傳球分開一步? – FeifanZ 2011-04-22 15:22:09