Originariamente inviato da James83
Il mio problema e' che potrei avere tutte cifre decimali come nessuna...
Sì ma la questione è che in genere a uno non interessa tanto sapere se il numero ha 0, 1, 2 ecc.. decimali ma specificare quanti ne vuole visualizzare!
Originariamente inviato da James83
QUindi se volessi semplicemente dire di occupare 9 spazi (senza specificare il numero di decimali)?
Se non specifichi il 'precision', ecco cosa ottieni:
System.out.format ("|%9f|%n", 1234.5678);
System.out.format ("|%9f|%n", 34.56);
System.out.format ("|%9f|%n", 34.0);
codice:
|1234,567800|
|34,560000|
|34,000000|
Se non viene specificato il 'precision', per default è 6. E nota che il 'width' è il numero minimo di caratteri. Quindi vedi bene che andrebbe oltre i 9 caratteri con il primo numero.
Originariamente inviato da James83
Funziona anche con la classe FileWriter?
FileWriter non ha alcuna funzionalità di formattazione. FileWriter "sa" solo di dover scrivere uno o più caratteri e basta.
PrintStream/PrintWriter hanno il format(). Tecnicamente un FileWriter si potrebbe anche "wrapparlo" in un PrintWriter.