La classe Math est une bibliothèque mathématique couramment utilisée en Java. Elle fournit de nombreuses fonctions et constantes mathématiques couramment utilisées, telles que les fonctions trigonométriques, les fonctions exponentielles, la constante π, etc. Parmi elles, la méthode round() est l’une des méthodes les plus couramment utilisées dans la classe Math. Cet article expliquera en détail la méthode round() de la classe Math, y compris son utilisation, sa fonction et des exemples de code spécifiques.
1. Présentation de la méthode round()
La méthode round() est une méthode statique de la classe Math. Sa fonction est d'arrondir un nombre à virgule flottante à l'entier le plus proche. La syntaxe de cette méthode est la suivante :
public static int round(float a) public static long round(double a)
Cette méthode reçoit un paramètre a de type float ou double et renvoie un entier de type int ou long. Parmi eux, lorsque la partie décimale de a est inférieure à 0,5, arrondissez a pour obtenir un nombre entier ; lorsque la partie décimale de a est supérieure ou égale à 0,5, ajoutez 1 à a et arrondissez pour obtenir un nombre entier.
2. Utilisation de la méthode round()
Dans certains scénarios, nous n'avons pas besoin de traiter les nombres à virgule flottante avec une haute précision, il suffit de les arrondir à Un nombre entier suffit. À ce stade, nous pouvons utiliser la méthode round() de la classe Math pour y parvenir.
Par exemple, nous avons une variable de type float f, sa valeur est 3,1415926, nous voulons l'arrondir à un nombre entier, vous pouvez utiliser le code suivant :
float f = 3.1415926f; int result = Math.round(f); System.out.println(result);
Le résultat courant est :
3
Comme on peut le voir sur le résultat, 3,1415926, est arrondi à 3.
De même, pour une variable de type double, vous pouvez également utiliser la méthode round() de la classe Math pour l'arrondir à un nombre entier. Par exemple, nous avons une variable de type double d, sa valeur est 123,456789, nous voulons l'arrondir à un nombre entier, vous pouvez utiliser le code suivant :
double d = 123.456789; long result = Math.round(d); System.out.println(result);
Le résultat courant est :
123
Comme le montre le résultat , 123,456789 est arrondi à 123.
Dans certains scénarios, nous devons effectuer un traitement d'approximation des nombres à virgule flottante. Par exemple, dans les simulations informatiques, la précision des nombres à virgule flottante est limitée et certains nombres à virgule flottante peuvent ne pas être représentés avec précision. À ce stade, nous pouvons approximer le nombre à virgule flottante pour le rapprocher de la valeur correcte.
Par exemple, nous souhaitons approximer une variable de type double afin que sa partie à virgule flottante ne conserve que deux décimales. Nous pouvons utiliser le code suivant :
double d = 3.1415926; double approx = Math.round(d * 100) / 100.0; System.out.println(approx);
Ce code multiplie d'abord d par 100, puis l'arrondit à un nombre entier en utilisant la méthode round(), et enfin le divise par 100,0 pour obtenir une valeur approximative. Le résultat courant est :
3.14
Comme le montre le résultat, 3,1415926 est approximé à 3,14.
3. Notes sur la méthode round()
Par exemple, pour une variable de type float f, si sa valeur est infinie ou NaN, alors Math.round(f) renverra directement le paramètre f lui-même. Par exemple, pour le code suivant :
float f = Float.POSITIVE_INFINITY; int result = Math.round(f); System.out.println(result);
Le résultat sera affiché :
2147483647
Puisque Float.POSITIVE_INFINITY est l'infini positif et ne peut pas être représenté dans l'ordinateur, Math.round(f) renvoie directement f lui-même.
De même, pour une variable de type double d, si sa valeur est infinie ou NaN, alors Math.round(d) renverra directement le paramètre d lui-même.
En raison de la limitation de l'espace mémoire de l'ordinateur, la méthode round() peut produire des résultats anormaux ou inattendus pour les nombres à virgule flottante trop grands ou trop petits. Par exemple, pour le code suivant :
double d = 1.23456789E308; long result = Math.round(d); System.out.println(result);
Puisque 1.23456789E308 dépasse la limite supérieure du type double, ce code lèvera une exception.
De même, pour les nombres à virgule flottante trop petits, comme le code suivant :
double d = 1.23456789E-323; long result = Math.round(d); System.out.println(result);
Puisque 1.23456789E-323 est plus petit que la limite de précision du type double, ce code renverra 0 au lieu de la valeur approximative attendue.
4. Conclusion
Grâce aux exemples de code ci-dessus, nous pouvons voir que la méthode round() de la classe Math est une méthode mathématique plus pratique. Elle peut facilement arrondir les nombres à virgule flottante en nombres entiers et peut approximer les nombres à virgule flottante. avec. Cependant, lors de l’utilisation de cette méthode, nous devons prêter attention aux plages de paramètres et aux exigences de précision pour éviter des résultats anormaux ou inattendus.
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!