其实PrintWriter流是Writer流包装流,其目的是增强打印方法。因为Writer流是通过write方法写数据的,此方法只能操作String,char,char[],int这几种数据类型。PrintWriter流的print方法操纵所以的类型数据,包括对象,而且可以保证数据的原样打印。当遇到write方法操作不了的数据类型时,可以使用PrintWriter流。
“请问被包装过之后的System.out做这样的输出和System.out.println("Hello World")有什么区别?”
在本例中是没有区别的,原因是它们调用的是同一个流“System.out”,使用的是同样的方法"println"。其实System.out本来就是一个PrintWriter流, “PrintWriter out = new PrintWriter(System.out, true);”可以写成“PrintWriter out =System.out ”。
|