我有这段简化的代码:
System.out.printf("%-*s Exam Percentage: %4.1f Final Grade: %c\n", VAR, "fox"+", "+"jim",25.3225, 'C');
根据此文献及其他资源,以下代码应该生成一个名为“VAR”的列,并且该列应包含一行文本。该行所占的字符宽度应根据实际情况而定。
fox, jim Exam Percentage: 25.3 Final Grade: C
它通过for循环运行,VAR是第一个字符串的最大大小。
我认识这个方法:
System.out.printf("%-"+VAR+"s Exam Percentage: %4.1f Final Grade: %c\n", "fox"+", "+"jim",25.3225, 'C');
它可以工作,但我主要是好奇。此外,前面提到的页面提到“argsize”,对此的解释可能会提供一些洞见。
附注:我知道代码中有字面量。这是为了简单起见。