writer在java中的意思_Java在FileWriter和BufferedWriter之间的区别
小編典典
如果您使用BufferedWriter則效率更高
在刷新/關閉之間有多次寫入
與緩沖區大小相比,寫操作較小。
在您的示例中,您只有一次寫入,因此BufferedWriter只會增加您不需要的開銷。
這是否意味著第一個示例一個接一個地寫入字符,第二個第一個將其緩沖到內存中并寫入一次
在這兩種情況下,字符串都是一次寫入的。
如果僅使用FileWriter,則您的write(String)調用
public void write(String str, int off, int len)
// some code
str.getChars(off, (off + len), cbuf, 0);
write(cbuf, 0, len);
}
每次調用write(String)都會進行一次系統調用。
BufferedWriter提高效率的地方是進行多次小寫操作。
for(int i = 0; i < 100; i++) {
writer.write("foorbar");
writer.write(NEW_LINE);
}
writer.close();
如果沒有BufferedWriter,則可能會進行200(2 *
100)次系統調用并將其寫入磁盤效率低下。使用BufferedWriter,可以將它們全部一起緩沖,并且由于默認緩沖區大小為8192個字符,因此這僅是1個要寫入的系統調用。
2020-09-18
總結
以上是生活随笔為你收集整理的writer在java中的意思_Java在FileWriter和BufferedWriter之间的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阻塞队列之七:DelayQueue延时队
- 下一篇: java参数传入的是一个类名_Java编