Java的String.format方法中的可变宽度
我正在做一个需要显示文本树的项目。我试图使用Java的String.format方法简化格式化过程,但是在尝试应用可变宽度时遇到了麻烦。
当前我有一个变量(一个整数),称为深度。
我尝试执行以下操作:
String.format("%"+depth+"s"," ") + getOriginalText() + "\n";
但是我得到以下错误。
java.util.FormatFlagsConversionMismatchException: Conversion = s, Flags = 0
关于如何执行此操作的任何建议,还是我应该解决循环问题?
谢谢您的帮助!
回答:
这有效:
int depth = 5;String str= "Hello"+ String.format("%"+depth+"s"," ") + "world" + "\n";
System.out.println(str);
在中间有空格的同时打印5。
你好,世界。
请检查您的代码,并确保depth
已为其分配有效值int
。(很可能是的无效值depth
)是问题所在。
以上是 Java的String.format方法中的可变宽度 的全部内容, 来源链接: utcz.com/qa/411912.html