import java.io.*;
public class PWTest
{
public static void main(String[] args)
{
PrintWriter pw=new PrintWriter(System.out,true);
pw.print("Hello");
}
}
没有输出结果,把pw.print()换成pw.println() 或在pw.print() 加一行pw.println()有输出结果 Hello
问一下这是什么问题?

解决方案 »

  1.   

    你只是把Hello这个字符输入到了System.out这个流中,   
     这样: 
    pw.print("Hello");
    pw.flush(); //用这个,清一下缓冲区。
      

  2.   

    原来,没注意关闭,为什么println() 就直接可以显示
      

  3.   

    PrintWriter pw=new PrintWriter(System.out,true);
    中的true 为是否flushOnNewline德意思。
    flushOnNewline控制Java是否在println( )方法被调用时刷新输出流,你用的是true,意味着
    println( )指定输出流为System.out并在每一新行后自动刷新流。而print( )只是逐个字符写入,并不自动刷新。
    你可以试着将flushOnNewline改为false,即时用println( )也将不会输出Hello。