PDA

View Full Version : [Java] Formattare double in stile Matlab


cionci
19-04-2007, 10:04
Qualcuno saprebbe dirmi come formattare i double dati in output in uno stile che sia simile a quello di Matlab o SciLab ?

Ad esempio se ho un vettore formato da questi numeri: 1, 1/100, 1/10000000, 100000000
Devo avere un output di questo tipo:
1
0.01
1.000E-07
1.000E08

Mi basta anche qualcosa di simile...

Frank1962
19-04-2007, 11:47
A partire dalla release 1.5, la classe PrintWriter dispone anche di un metodo printf() simile a quello presente nel C, che permette di stampare un output formattato:

PrintWriter printf(String format, Object... args)

quindi puoi fare un cosa simile:


PrintWriter pw = new PrintWriter(System.out);
double op1 = 1;
double op2 = 10000000;
pw.printf("valore: %e",op1/op2);
pw.flush();


se vuoi una flessibilitā maggiore nella formattazione ti consiglio di andare a vedere nella documentazione java cosa ti offre la classe NumberFormat: http://java.sun.com/j2se/1.4.2/docs/api/java/text/NumberFormat.html

ciao ;)

cionci
19-04-2007, 12:07
Ok...direi che quella che fa per me č DecimalFormat...

Grazie ;)