[JAVA] Mémorandum Big Decimal Always Int pour débutants

introduction

J'apprends Java depuis 3 mois. Je fais Spring en formation, mais si le type de données est Number J'ai utilisé Big Decimal au lieu de int pour les choses qui ne sont que des entiers. En parlant de nombres, je n'utilisais que des int ou double, et j'étais confus au sujet du traitement de Big Decimal. Il existe de nombreux articles bien organisés sur BigDecimal, Je ne résumerai que ceux que j'ai réellement utilisés comme mémorandum.

Je veux calculer

Les quatre règles ne sont pas "+", "-", "*", "/".

Calcul Méthode Exemple
Addition (A+ B) add A.add(B)
Soustraction (A- B) subtract A.subtract(B)
Multiplier (A* B) multiply A.multiply(B)
Calcul lent (A/ B) divide A.divide(B)

Je n'ai pas utilisé de calcul progressif, mais si c'est un petit nombre, j'ai besoin de trois arguments. A. diviser (B, nombre de chiffres après la virgule décimale, méthode d'arrondi (arrondi vers le haut, arrondi vers le bas, arrondi, etc.)) Je ne l'ai pas utilisé cette fois, je vais donc l'omettre.

Je veux comparer

Utilisez "compareTo".

Opérateur de comparaison Valeur de retour Exemple
A < B Si A est inférieur à B-Renvoie 1 A.compareTo(B) < 0
A > B Renvoie 1 si A est supérieur à B A.compareTo(B) > 0
A == B Renvoie 0 si A et B sont égaux A.compareTo(B) == 0

Quand je l'ai recherché dans la formation, je voulais le rendre "inférieur à (<=") au lieu de "plus petit (<)", alors je l'ai écrit comme ça.

//Pas "plus grand que" (ça va te gâcher la tête)
if (!(A.compareTo(B) == 1)) {
}

//Je pense que c'était bien
if (A.compareTo(B) <= 0) {
}

Big Decimal ↔︎ Conversion de chaîne

J'ai également écrit qu'il reçoit la valeur d'entrée en type String et la convertit en BigDecimal pour le traitement.

BigDecimal→String

Chaîne Nom de la variable de type chaîne=Grand type décimal.toString();

String→BigDecimal

Nom de la variable de type BigDecimal BigDecimal= new BigDecimal(Type de chaîne);

référence

https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/math/BigDecimal.html https://www.sejuku.net/blog/25564 https://techacademy.jp/magazine/31915

Recommended Posts

Mémorandum Big Decimal Always Int pour débutants
Java Big Decimal
[Ruby] Big Decimal et DECIMAL