Can someone please explain to me what is happening when a method call is prefaced by parenthesis, such as shown in the example in the subject?
The ab.remove(0); part I get. I don't understand the (WhatIsThis) part.
There's no place like 127.0.0.1
Joined: Jan 14, 2005
if the (whatIsThis) happens to be the name of a data type, such as (int) or (double) or the like, then you're probably looking at a typecast.
that is, the method returns a value of some one type, but the place where the method call is used needs a value of another type. putting the name of the type you need in parentheses before the method call like that tells the javac compiler to try and convert the value returned into the type needed, as best it can.
In general, when an expression is preceded by something in parentheses, this means that the object reference (or primitive value) represented by that expression is explicitly cast to the type specified within the parentheses.
For example, in an ArrayList, the remove(int) method returns a reference to the element removed from the List at the specified index (the int argument). But this reference is likely to be of type Object; so to be of any use, it needs to be explicitly cast back to its true type. [ January 18, 2005: Message edited by: marc weber ]
"We're kind of on the level of crossword puzzle writers... And no one ever goes to them and gives them an award." ~Joe Strummer sscce.org
Joined: Jan 18, 2005
Thank you! With this information, I returned to the code and it makes perfect sense now.