Bonjour,
Je débute en java, et j'aimerai faire un calcul. Je veux un résultat en float.

J'ai donc implémenté une méthode de test pour voir comment se passe le calcul.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
    public static float test() {
        float resultat;
        resultat = 2/3;
        return resultat; // Retourne  0
    }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
    public static float test() {
        float resultat;
        resultat = 2/3.0; // Erreur de compilation : conversion d'un double en float
        return resultat;
    }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
    public static float test() {
        float resultat;
        resultat = (float) 2/3.0;
        return resultat; // Retourne 0.6666 ...
    }
Je ne comprends pas trop la logique ... du coup si je veux faire le même calcul avec un arrondi à 2 chiffre après la virgule obtenu par calcul .. je suis perdu

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
    public static float test() {
        float resultat;
        resultat = (float) 2/3.0;
        resultat = (int) resultat*100 /100.00; // Erreur de compilation : conversion d'un double en float
        return resultat;
    }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
    public static float test() {
        float resultat;
        resultat = (float) 2/3.0;
        resultat = (int) resultat*100;
        resultat /= 100.00;
        return resultat; // Retourne 0 !! 
    }


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
    public static float test() {
        float resultat;
        resultat = (float) 2/3.0;
        resultat = (int) (resultat*100);
        resultat /= 100.00;
        return resultat; // Retourne 0.66
    }
Est ce qu'il y a une possibilité d'écrire exactement ce même calcul en une seule ligne ?
Merci par avance.