web-dev-qa-db-fra.com

Comment imprimer une valeur tape longue à l'aide du modificateur de taille d'entrée?

C'est fondamentalement ce que j'essaie de faire

// ... some code, calculations, what have you ...
long timeToAdd = returnTimeToAddInLongFormat();

// lets output the long type now, and yes i need the width and precision.
System.out.printf("Time to add: %13.10ld", timeToAdd);

J'ai lu la plupart des recherches de Google autour du sujet et je crois comprendre comment le faire conceptuellement, mais le JRE continue de me jeter un UnknownFormatConversionException et de me dire mon modificateur de taille d'entrée l _ _ ne fonctionne pas .

Y a-t-il une autre façon de faire cela, ou a-t-il manqué quelque chose de petit?

19
snnth

Java traite toutes les valeurs entières telles que d, il n'y a pas de LD. Même l'octet et Biginteger est un type d. Cela suppose également des entiers n'ont pas de décimales. Si vous souhaitez afficher 10 zéros, vous pouvez convertir en double en premier et utiliser f

25
Peter Lawrey