The output of this code is "long". I am not sure why this output. I was expecting in to produce output "float". If I remove method 3 output becomes "float". Please can anyone explain what is the logic behind this?