Je sais que le comportement qui suit est un vieux problème, mais je ne comprends pas pourquoi un tel simple morceau de code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
double val = 0;
for(int i=0;i<10;i++) {
    val+=0.1;
    System.out.println(val);
}
me donne-t-il cette résultat
0.1
0.2
0.30000000000000004
0.4
0.5
0.6
0.7
0.7999999999999999
0.8999999999999999
0.9999999999999999
???

et comment faire pour éviter ce problème

Merci...