Win a copy of The Way of the Web Tester: A Beginner's Guide to Automating Tests this week in the Testing forum!

# Question on float variables

Nina Binde
Ranch Hand
Posts: 85

This compiles fine and f4.intValue() gives 10 as result, f5.floatValue() gives 1.0 as result. I fail to understand how the result is calculated. Is including e,f and d anywhere in the literal valid?

Barry Gaunt
Ranch Hand
Posts: 7729
"1e1f" that's a float literal because of the "f" at the end.
"1e1" that's the exponential notation and means 1 times (ten to the power of 1). Ten to the power of 1 is ten. So "1e1f" is 10.0. The integer part of 10.0 is 10.

I leave you to work out the other one.
[ October 24, 2004: Message edited by: Barry Gaunt ]

rogel garcia
Ranch Hand
Posts: 41
This works like this

1e1 means 1 x 10 powered 1 == 10
this is a double number, since every floating point literal is a double

You can put the D or F to explicity declare this number as a float or double

The results were different because
.1 == 0.1
1 == 1.0