請問大家到底是批處理快也就是我們所用的直接講文件字節拷貝處理速度快還是存在緩沖區的buffrerdoutputstream處理文件快。是不是在緩沖區的size足夠大的時候 緩沖區比直接拷貝文件要快。可是我不理解的是,如果把文件的傳輸兩邊看成是兩個水缸。直接拷貝字節文件 ?內存開辟的足夠大的情況下 是不是可以看作直接將一個滿的水缸中的水倒入另一個水缸而緩沖區的字節文件拷貝 在緩沖區size足夠大的情況下 是不是看作先把 滿水倒入 中間的水桶(緩沖區),在從緩沖區倒入另一個水缸。這樣下來 更直觀的不是緩沖區多了一個環節而為什么實際上緩沖區處理文件快?
1 回答
已采納

Developer_Zuck
TA貢獻112條經驗 獲得超42個贊
你的理解也有一定道理,但是在java編程語言這里就不一樣了。
緩沖流的底層同樣是字節或字符流,只不過一次讀取的內容更多!就拿你說的水來說,你用普通的流來將一桶水倒到另外的一桶水,需要50次,但是如果用緩沖流,可能只需要10次。實際上緩沖流的效率比這高得多。
這就不單單是用中間一個桶以及直接倒水的概念性問題,而是實際上你的倒水能力問題!
緩沖區的讀寫就是奔著效率去的。。。
添加回答
舉報
0/150
提交
取消