1.0 is by default a double literal. So the method Math.abs(double) will be chosen. And you will get a double as the returned value. So float f = Math.abs(1.0) will not compile without casting the returned value to a float. After saying that I better go try it to see if I'm correct. -Seey you later.