如何将多个数组值作为格式args传递?

时间:2015-10-09 00:21:25

标签: java java.util.scanner printwriter

使用writer.format并传递预定义的格式字符串(%5s%10s ...),将字符串数组解析为单独的参数的最佳方法是什么?

所以,如果我有:

Printwriter writer = new Printwriter ("table.txt");
String[] columns = {"Name", "Month", "Day"};
String form_string = "%20s%10s%5s";

如何将数组元素名称,月份和日期作为arg1,arg2,arg3传递到:

writer.format(form_string, arg1, arg2, arg3);

1 个答案:

答案 0 :(得分:0)

因为java 1.5,PrintWriter类有一个方法 printf (参见https://docs.oracle.com/javase/8/docs/api/java/io/PrintWriter.html#printf-java.lang.String-java.lang.Object...-),它可以帮助你,因为它只允许一系列参数。

这里有一个代码段:

PrintWriter writer = new PrintWriter(System.out);
String[] columns = {"Name", "Month", "Day"};
String form_string = "%20s%10s%5s";
writer.printf(form_string,columns);
writer.flush();

输出只是以所需格式格式化。

            Name     Month  Day

希望这有帮助!