¿Cómo iterar entre 0.1f y 1.0f con incrementos de 0.1f en Java? [duplicar]

Posible duplicado:
Java flota y se duplica, ¿cómo evitar que 0.0 + 0.1 +… + 0.1 == 0.9000001?

Tengo un problema siguiente en Java: tengo que iterar entre 0.1f y 1.0f en incrementos de 0.1f, por lo que me gustaría que mi salida se vea así:

    0.1
    0.2
    0.3
    0.4
    ...
    0.9

En cambio, cuando lo hago:

for(float i = 0.1f; i < 1f; i += 0.1f)
    System.out.println(i);

yo obtengo

0.1
0.2
0.3
0.4
0.5
0.6
0.70000005
0.8000001
0.9000001

Imagino que tiene algo que ver con la forma en que las fracciones están representadas por una computadora, pero me gustaría saber por qué sucede esto y si hay algo que pueda hacer para detenerlo. Gracias.

Respuestas a la pregunta(4)

Su respuesta a la pregunta