Java中动态指定长度打印

  • C语言中的printf,sprintf打印实现

以前使用C语言的时候知道可以使用如下方法动态指定长度打印:

点击查看代码
printf("[%-*s]", 10, "hello");
sprintf(str, "[%-*s]", 10, "hello");
  • 发现在Java中使用String.format不奏效
Exception in thread "main" java.util.UnknownFormatConversionException: Conversion = '-'
	at java.base/java.util.Formatter.checkText(Formatter.java:2732)
	at java.base/java.util.Formatter.parse(Formatter.java:2718)
	at java.base/java.util.Formatter.format(Formatter.java:2655)
	at java.base/java.util.Formatter.format(Formatter.java:2609)
	at java.base/java.lang.String.format(String.java:2897)
  • 曲线救国
System.out.println("format========>" + String.format(String.format("[%%-%ds]", 10), "hello"));
posted @ 2021-11-17 17:04  杨海星  阅读(293)  评论(0编辑  收藏  举报