come posso approssimare un numero double ad esempio alla seconda cifra decimale?
esempio:
double d=124.561945321641646513;
posso in qlc modo approssimarlo a 124.56???
come posso approssimare un numero double ad esempio alla seconda cifra decimale?
esempio:
double d=124.561945321641646513;
posso in qlc modo approssimarlo a 124.56???
a me l'unico metodo che viene in mente per far ciò è qst:
trasformo d in una stringa
String s=d+"";
poi faccio uno split su s per dividerla in due sottostringe come trova il carattere "punto"
String [] s1=s.split("//.");
poi considero la seconda sottostringa e ne faccio una nuova sottostringa:
String s2=s1[1].substring(0,2);
ora faccio la concatenazione tra stringhe e ottengo il numero desiderato:
String s3=s1[0]+s2;
qst metodo dovrebbe essere corretto...forse poco efficiente perchè crea molte stringhe(il problema si potrebbe risolvere cn lo StringBuffer o StringBuilder)ma nn dovrebbe creare errori
esiste un altro metodo + breve o addirittura immediato?
Arrotondamento per difetto (=troncamento) o per eccesso se la prima cifra tolta supera 5?Originariamente inviato da zipangulu
come posso approssimare un numero double ad esempio alla seconda cifra decimale?
esempio:
double d=124.561945321641646513;
posso in qlc modo approssimarlo a 124.56???
Comunque:
a) Si moltiplica il valore per 10^n_cifre_decimali
b) Si usa Math.floor() (=troncamento) o Math.round()
c) Si divide il risultato per 10^n_cifre_decimali
No ... proprio stupido e inutile.Originariamente inviato da zipangulu
qst metodo dovrebbe essere corretto...forse poco efficiente![]()
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
ok perfetto grazie per l'ennesima volta!