做果蔬行业的网站,水果网络营销推广方案,软装设计培训机构,杭州建网站小编典典如果您使用BufferedWriter则效率更高在刷新/关闭之间有多次写入与缓冲区大小相比#xff0c;写操作较小。在您的示例中#xff0c;您只有一次写入#xff0c;因此BufferedWriter只会增加您不需要的开销。这是否意味着第一个示例一个接一个地写入字符#xff0c;第二…小编典典如果您使用BufferedWriter则效率更高在刷新/关闭之间有多次写入与缓冲区大小相比写操作较小。在您的示例中您只有一次写入因此BufferedWriter只会增加您不需要的开销。这是否意味着第一个示例一个接一个地写入字符第二个第一个将其缓冲到内存中并写入一次在这两种情况下字符串都是一次写入的。如果仅使用FileWriter则您的write(String)调用public void write(String str, int off, int len)// some codestr.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