je fais la commande d'impression java ci-dessous pour cette double variable double test = 58.15; Lorsque je fais un System.out.println (test); et System.out.println (nouveau Double (test) .toString()); Il imprime comme 58.15.En ce qui concerne BigDecimal
Quand je fais un System.out.println (nouveau BigDecimal (test)) Je reçois la valeur ci-dessous 58,14999999999999857891452847979962825775146484375
Je suis en mesure de comprendre « test » double valeur variable est enregistrée en interne comme 58,1499999. Mais quand je fais ci-dessous deux System.out.println je reçois la sortie comme 58.15 et non 58.1499999.
System.out.println (test);
System.out.println (nouveau Double (test) .toString());
Il imprime la sortie comme 58.15 pour les deux précédents.
Est-ce que les instructions System.out.println ci-dessus arrondissent la valeur 58.1499999 et l'affichent comme 58.15?
Merci beaucoup pour l'info – Arav