为了账号安全,请及时绑定邮箱和手机立即绑定

println()打印字符串之后,再调用flush()将缓冲区内容输出,这样不是会打印两遍吗?求指教

如题,求指教

正在回答

1 回答

flush() 是把缓冲区的数据强行输出,主要用在IO中,即清空缓冲区数据,一般在读写流(stream)的时候,数据是先被读到了内存中,再把数据写到文件中,当你数据读完的时候不代表你的数据已经写完了,因为还有一部分有可能会留在内存这个缓冲区中。这时候如果你调用了close()方法关闭了读写流,那么这部分数据就会丢失,所以应该在关闭读写流之前先flush(),所以只是打印了一遍。

0 回复 有任何疑惑可以回复我~
#1

gary_gary

那老师的意思是,flush()是为了保险起见而存在的?
2015-04-24 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

println()打印字符串之后,再调用flush()将缓冲区内容输出,这样不是会打印两遍吗?求指教

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信