Maison >Java >javaDidacticiel >Comment puis-je m'assurer que la division entière en Java produit un résultat à virgule flottante ?
Surmonter les limitations de division d'entiers
En programmation, la division de deux entiers aboutit souvent à un autre entier, tronquant tout reste. Cela devient gênant lorsque vous avez besoin d'un résultat à virgule flottante. Explorons comment modifier le code pour garantir que la division de deux entiers produit un flottant à la place.
Code original :
class CalcV { float v; float calcV(int s, int t) { v = s / t; return v; } //end calcV } public class PassObject { public static void main (String[] args ) { int distance; distance = 4; int t; t = 3; float outV; CalcV v = new CalcV(); outV = v.calcV(distance, t); System.out.println("velocity : " + outV); } //end main }//end class
Solution :
Pour obtenir un résultat flottant, convertissez l'un des opérandes en flottant avant d'effectuer la division :
v = (float)s / t;
Le casting a une priorité plus élevée que la division, garantissant que le casting est exécuté en premier. L'autre opérande est automatiquement converti en flottant par le compilateur car les opérations de type mixte entraînent des opérations à virgule flottante.
Code mis à jour :
class CalcV { float v; float calcV(int s, int t) { v = (float)s / t; return v; } //end calcV }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!