【发布时间】:2014-01-11 13:22:22
【问题描述】:
我正在阅读byte stream 试用版并注意到以下声明
注意 read() 返回一个 int 值。如果输入是一个流 字节,为什么 read() 不返回字节值?使用 int 作为返回 type 允许 read() 使用 -1 表示已经到了结尾 流的。
使用int 的给定原因是它们可以通过-1 来识别EOF。 (看起来很浅)
所以下一个更大的原始类型是short,它也支持-1,为什么不使用它呢?
据我所知:(使用int的原因)
- 由于性能,
int是首选。 (this) -
int变量在其最后 16 位中保存一个字符值(来自 character trial) - 其他更抽象的流需要读取的不仅仅是一个 字节(我猜的东西(发生在字符流中))
我的理由正确吗?我错过了什么(比如纠错)吗?
【问题讨论】:
标签: java