Java DataInputStream类方法readFully用于将流中的字节读取到作为参数传递的字节数组中。从流中读取字节后,readFully是否增加流的位置?

最佳答案

从流中读取字节后,readFully是否增加流的位置?


是。

我看不到DataInputStream javadocs中明确声明的位置,但这是所有输入流和阅读器工作的方式。

如果DataInputStream.readFully()的行为不这样:


这会使API难以使用,
由于DataInputStream是任意InputStream实例的过滤器,并且这些实例不支持查找,因此实现起来会很困难且昂贵。
这将违反最小惊讶原则。

08-25 08:56