Primitives passed as parameters to a method will not be modified, but Objects will! Both you (the code block calling the method) and the method you pass an Object to contain a reference to the SAME Object. Try playing around with this simple program to gain a better understanding:
You should find that the primitive value doesn't change, but the Map's size does!
At first I thought you were asking about how they could make the parameters optional, and in case you don't know, you could just pass null arguments in place of the Object parameters (as long as that method was set up to handle null values when you didn't have anything to give it).
[ October 27, 2004: Message edited by: Stephen Huey ]