System.out.println("54321".valueOf(12345)) ; Result : 12345 Why does it give result as given above ?
Joined: Mar 20, 2001
because valueOf() is a static method. so your call is no different than
your "54321" just help establish that the method to be called belong to the String class as opposed to Integer.valueOf(), Byte.valueOf(), etc.
Joined: Sep 03, 2003
"54321" is an instance of String. valueOf() is a static method of String. It's perfectly legit to access a static method via an instance, and in this case the contents of the instance make no difference. String.valueOf(12345) and "".valueOf(12345) will also produce the string 12345.