floorRenvoie le plus grand entier non supérieur à l'argument.
roundIl s'agit d'un calcul d'arrondi à la moitié supérieure, arrondissant à l'entier qui lui est supérieur.
roundsignifiearrondi", l'algorithme estMath.floor(x+0.5), c'est-à-dire ajouter 0.5 au nombre d'origine puis appliquer floor, doncMath.round(11.5)le résultat est 12, et le résultat de Math.round(-11.5) est -11.
Regardons d'abord la sortie des méthodes Java Math floor, ceil, rint et round à travers l'exemple suivant :
Test.java
Exécutez le programme ci-dessus pour tester la sortie :
$ javac Test.java $ java Test 输入一个浮点数: 2.2 Math.floor(2.2) = 2.0 Math.ceil(2.2) = 3.0 Math.rint(2.2) = 2.0 Math.round(2.2) = 2 -2.2 Math.floor(-2.2) = -3.0 Math.ceil(-2.2) = -2.0 Math.rint(-2.2) = -2.0 Math.round(-2.2) = -2 -2.5 Math.floor(-2.5) = -3.0 Math.ceil(-2.5) = -2.0 Math.rint(-2.5) = -2.0 Math.round(-2.5) = -2 2.5 Math.floor(2.5) = 2.0 Math.ceil(2.5) = 3.0 Math.rint(2.5) = 2.0 Math.round(2.5) = 3 2.7 Math.floor(2.7) = 2.0 Math.ceil(2.7) = 3.0 Math.rint(2.7) = 3.0 Math.round(2.7) = 3 -2.7 Math.floor(-2.7) = -3.0 Math.ceil(-2.7) = -2.0 Math.rint(-2.7) = -3.0 Math.round(-2.7) = -3
Analyser la sortie
1, Math.floor()Arrondi à l'entier inférieur, c'est-à-dire le plus grand entier inférieur à ce nombre.
Math.floor(2.2) = 2.0; Math.floor(-2.2) = -3.0; Math.floor(2.5) = 2.0; Math.floor(-2.5) = -3.0; Math.floor(2.7) = 2.0; Math.floor(-2.7) = -3.0;
2, Math.ceil()Arrondi à l'entier supérieur, c'est-à-dire le plus petit entier supérieur à ce nombre.
Math.ceil(2.2) = 3.0; Math.ceil(-2.2) = -2.0; Math.ceil(2.5) = 3.0; Math.ceil(-2.5) = -2.0; Math.ceil(2.7) = 3.0; Math.ceil(-2.7) = -2.0;
3, Math.rint()Renvoie l'entier le plus proche de la valeur.
Remarque :S'il y a deux tels entiers, renvoyer l'entier pair。
4, Math.round() arrondi, mais lorsque l'argument est négatif, il n'est pas facile à comprendre. Regarder directement le code source devrait faciliter la compréhension. Notez que le type de retour est un entier.
Math.round(x) = Math.floor(x + 0.5)
Intégrez le code ci-dessus dans l'exemple suivant pour le tester :
Math.round(2.2) = 2; Math.round(-2.2) = -2; Math.round(2.5) = 3; Math.round(-2.5) = -2; Math.round(2.7) = 3; Math.round(-2.7) = -3
URL de référence : https://blog.csdn.net/u012050154/article/details/52448260