我想知道最简单的方法是将整数转换为等效的空格数.当打印二叉搜索树时,我需要它在节点之间的空格.我试过了
int position = printNode.getPosition(); String formatter = "%1"+position+"s%2$s\n"; System.out.format(formatter,"",node.element);
但是与位置的int值相比,我的空间几乎是3倍.我不确定我是否正确格式化字符串.
任何建议都会很棒!
如果它更清楚,说position = 6;我想要在我的节点元素之前打印6个空格.
解决方法
我想你的意思是:
int n = 6; String s = String.format("%1$#"+n+"s","");
System.out.format("[%13s]%n",""); // prints "[ ]" (13 spaces) System.out.format("[%1$3s]%n",""); // prints "[ ]" (3 spaces)