Good intentions.
By writing i + ""; , you may leave it in your future supporting code (which can be very useful to you) to figure out what will happen with this output.
WrapperClass.toString(); is more explicit and, although more detailed, his intentions are more clear. Also, weak typing is not what you usually see in Java, so I suggest you write idiomatic Java code.
After compilation, the emitted bytecode is likely to be the same or similar. After teasing and at runtime, you can expect the differences to be effectively nullified.
So in the end, this is a style issue, although I would suggest using a more detailed version of your code.
source share