java.io.PrintStream显示

时间:2015-10-01 18:55:56

标签: java arrays string java-io

我正在使用数组和循环创建一个java程序来创建一个表,但是当打印这些值时,它们后跟" java.io.PrintStream@1909752"一遍又一遍地重复

导致错误的代码块如下,更具体地说是" row + ="部分。任何有关如何摆脱最后重复部分的帮助将不胜感激。

for ( int i = starting; i <= ending; i+= 1){
    row += System.out.format("%6d" + ": ", i);

    for ( int j = 0; j <= 11; j+=1){
        double answer = i*octaveArray[j];
        row += System.out.format("%.0f ", answer );
    }
    System.out.printf(row);
    System.out.println("");
}

1 个答案:

答案 0 :(得分:2)

来自PrintStream#format()的文档:

  

使用指定的格式字符串和参数将格式化字符串写入此输出流。

这意味着PrintStream#format()会将值写入输出流,但您可以将其toString表示形式添加到java.io.PrintStream@1909752变量中,然后打印出row变量输出到相同的输出流。

如果您希望将格式化结果附加到String变量,则应使用String.format()