US Trends

when an array is passed to a method, what does the method receive?

When an array is passed to a method (in languages like Java or C#), the method receives a reference to the original array , not a new copy of all its elements.

Quick Scoop

  • The parameter inside the method points to the same array in memory as the argument you passed.
  • Changing elements via that parameter (like arr[0] = 10;) changes the original array outside the method.
  • You are not passing a copy of the entire array; you are passing a copy of the reference (the memory address) to that array.

Put another way: the method can freely modify the array’s contents, but it cannot make your original variable “point” to a different array unless it returns something that you then reassign.

Simple Example (Java-style)

java

void modify(int[] nums) {
    nums[0] = 99;   // modifies the original array
}

int[] a = {1, 2, 3};
modify(a);
// a[0] is now 99

Here, modify receives a reference to the same array a, so changing nums[0] changes a[0] as well.

HTML Table: What the Method Receives

[9][1][3][5] [3][4][7] [5][7][3]
Question Answer
When an array is passed to a method, what does the method receive? The method receives a reference to the original array (a copy of the reference, not a copy of the array itself).
Can the method change the array elements? Yes. Because it works on the same array in memory, element updates inside the method affect the original array.
Is the entire array duplicated when passed? No. Only the reference (memory address) is passed, which is why this is efficient.

In many exam-style questions, the correct choice is:
“The reference of the array is passed to the method.”

TL;DR:
When an array is passed to a method, the method receives a reference to that array , so it can directly modify the original array’s elements.

Information gathered from public forums or data available on the internet and portrayed here.