class insertionSort
{
public void print(int arr[])
{
arr[0]=999999999;
}
}
public class Sorting
{
private int[] arr= {0,56,8,75,45,21,68,9,54,2,65,87,52,65,8,5,20,0,2,2};
public static void main(String[] arg)
{
Sorting sort = new Sorting();
insertionSort inSort = new insertionSort();
inSort.print(sort.arr);
System.out.println(sort.arr[0]);
}
}
儘管Sort.arr是一個私有變量,爲什麼inSort對象能夠操作arr [0]?java私人會員通過引用調用
我知道參數是通過引用或地址傳遞的。
在一個函數中,我怎麼能通過值?
輸出結果是:999999999 – enamel
Java總是按值傳遞,但是'arr'是一個引用,並且此引用是按值傳遞的。您不會複製陣列。 –
但原始的排序對象arr []值已更改。 – enamel