java中printwriter的write和print方法的区别
printwriter类中的write方法和print方法都用于向response对象写入字符数据。但这两者之间存在一些关键区别。
方法签名
行为
性能
使用方法
源码分析
深入分析源码可以进一步理解这两者之间的区别:
public void write(char[] buf) {
synch
ronized (lock) {
ensureOpen();
out.write(buf, 0, buf.length);
}
}
public void print(char[] s) {
synchronized (lock) {
ensureOpen();
out.println(s);
}
}从上面可以看出,write方法直接调用流的write方法,而print方法首先调用println方法,其中自动附加了换行符。