Как напечатать длинное типизированное значение с помощью модификатора размера ввода?

Это в основном то, что я пытаюсь сделать

// ... 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);

Я прочитал большинство поисковых запросов Google по этой теме и думаю, что понимаю, как это сделать концептуально, но JRE продолжает бросать мне UnknownFormatConversionException и говорит мне, что мой модификатор размера ввода l не работает.

Есть ли другой способ сделать это, или я пропустил что-то маленькое?

Ответ 1

Java обрабатывает все целочисленные значения как d, не существует ld. Даже байты и BigInteger - это тип d. Он также предполагает, что целые числа не имеют десятичных знаков. Если вы хотите показать 10 нулей, вы можете сначала преобразовать в double и использовать f