Most floating point calculations involve rounding errors. In your case, there are two rounding errors: converting (decimal) 1.1 to floating point (there's no exact representation for 1.1 in IEEE 754 floating point--which is what Java uses) and then multiplying by 100. See the excellent article What Every Computer Scientist Should Know About Floating-Point Arithmetic for more info.