Java中提供的输入流中,有PushbackReader和PushInputStream两种输入流,他们都带有一个推回缓冲区,当程序调用这两个推回输入流的unread()方法时,系统会将指定数组的内容推回缓冲区,当程序调用这两个推回输入流的read方法时总是先从推回缓冲区读取,只有读完了缓冲区的内容后,且没有装满数组的情况下,才回从原数据流中读取(前缀有些长),我的疑惑是,是不是可以使用InputStream和Reader提供的read(char[]/byte[] buf ,int offer,int len)方法来实现相同的效果?即:将一些数据存入数组后,将offer设置成数据的长度,len为数组长度减去数据长度,这样想对不对?
|