I am new to java, I would like to know, how can we pass an array object as a parameter to a method.Lets say if I have:
public void sortArray(A[7])
What should I put in between the parenthesis? Should it be A[length of array] or what?
When you pass an array as a parameter its length and what's stored in it gets passed so you don't need to specifically specify the length. For implementation, see the example below:
Simple example of a method that takes in an int array as a parameter:
public void takeArray(int[] myArray) {
for (int i = 0; i < myArray.length; i++) { // shows that the length can be extracted from the passed in array.
// do stuff
}
}
You would call this method thusly:
Say you have an array like so:
int[] someArray = {1, 2, 3, 4, 5};
Then you call the above method with:
takeArray(someArray);
You can also create an anonymous array if you don't want an array to be named like:
public void array(int arr[])
{
// code handling arr
}
Now for the above method you can pass an array object without creating it like:
public static void main(String[] args)
{
array(int[] {1,2,3,4,5});
}
This is also named as an Un-Named Array or Anonymous array. There is no need to create an array for call by value. If you don't want that array inside the main() method anymore you can use an un-named array. This helps in memory saving. Thankyou
snikerSince all writes must firstr be reads in the java memory model this isimpossibleunless good old chuck norris comes about