【发布时间】:2018-07-01 13:34:20
【问题描述】:
在 printf 中使用标志时我必须遵循任何特定顺序吗?
1.System.out.printf("%+04d + %s ", 12, "a");// include sign then pad zeros
2.System.out.printf("\n%04+d + %s ", 12, "a");// pad zeros then include sign
3.System.out.printf("\n%+-4d + %s ", 12, "a");// include sign then left justify
4.System.out.printf("\n%-4+d + %s ", 12, "a");// left justify then include sign
The answer is:
+012 + a
Exception in thread "main" java.util.UnknownFormatConversionException: Conversion = '0'
+12 + a
Exception in thread "main" java.util.UnknownFormatConversionException: Conversion = '-'
谢谢。
【问题讨论】:
-
是的,在使用
printf时,您需要遵循许多具体的事项。它们在 javadocs 中有描述:docs.oracle.com/javase/8/docs/api/java/io/… 和 docs.oracle.com/javase/8/docs/api/java/util/Formatter.html。提示:标志,然后是宽度,然后是转换。有关更多详细信息,请阅读 javadocs。
标签: java printf formatexception