calculating float numbers

publicstaticvoid main(String args[]){

System.out.println(0.1);// 0.1

System.out.println(0.7);// 0.7

System.out.println(0.1 + 0.7);// 0.7999999999999999

}

I expect 0.1, 0.7 and 0.8

why this happens?

thanks.

[504 byte] By [iamjhkanga] at [2007-11-27 5:45:41]
# 1
Oh no, not again ... http://onesearch.sun.com/search/onesearch/index.jsp?qt=floating+point+precision&qp_name=null&subCat=siteforumid%3Ajava31&site=dev&dftab=siteforumid%3Ajava31&chooseCat=javaall&col=developer-forums
quittea at 2007-7-12 15:27:39 > top of Java-index,Java Essentials,Java Programming...
# 2
http://docs.sun.com/source/806-3568/ncg_goldberg.html
CeciNEstPasUnProgrammeura at 2007-7-12 15:27:39 > top of Java-index,Java Essentials,Java Programming...