2012-02-20 6 views
91

Eventuali duplicati:
Round a double to 2 significant figures after decimal pointAndroid - Rotonda a 2 cifre decimali

So che ci sono un sacco di esempi su come arrotondare i numeri di questo tipo. Ma qualcuno potrebbe mostrarmi come arrotondare il doppio, per ottenere un valore che possa essere visualizzato come una stringa e avere SEMPRE 2 posizioni decimali?

+3

http://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormat.html questo sarà tuo amico. –

+0

double myNum = 34.393893 DecimalFormat df = new DecimalFormat ("#. ##"); String twoDigitNum = df.format (myNum); – koopaking3

risposta

324

È possibile utilizzare String.format("%.2f", d), la vostra doppia verrà automaticamente arrotondato.

+8

sì, questo stavo cercando, ma dovrebbe essere: String.format ("%. 2f", d), grazie – goodm

+0

grazie per correggere il mio errore =) – OleGG

+0

@OleGG bella soluzione Grazie –

9

Un modo semplice per farlo:

Double d; 
    Int i; 
    D+=0.005; 
    i=d*100; 
    Double b = i/100; 
    String s = b.toString(): 
+3

In nessun modo questo sembra facile. Anche se i pollici in su per la prova. –