Как напечатать длинное типизированное значение с помощью модификатора размера ввода?
Это в основном то, что я пытаюсь сделать
// ... 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