如何在Java中格式化多个字符串参数

3
我是一位学生,正在为课程作业写下以下内容:
public class SportsBall {
  public static void printDivision (String divName, String heading1, String heading2) {
    System.out.printf("%-30s", divName + heading1 + heading2);
  }

  public static void main(String[] args) {
    printDivision("bla ", "blahhhh ", "Northwest");
  }
}

我的问题是指定字符串divName、heading1和heading2的长度。"%-30s"可以格式化它们中的一个,但我无论如何都无法正确设置每个字符串的长度。我尝试了用逗号分隔的三组说明符,但它只会打印出额外的说明符。我知道这可能是非常简单的事情...

2个回答

3
如果你想将结果放到一个字符串中,可以使用以下代码:
String result = String.format("%-30s %-30s %-30s", divName, heading1, heading2);

然后你可以打印它或在其他地方使用它。

2
为了对它们进行格式化,您需要将它们分别传递给printf,而不是使用+将它们组合成一个字符串。
System.out.printf("%-30s %-30s %-30s", divName, heading1, heading2);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接