//inputstream 一次读一个byte
//int 有4个byte,故读四次
//首次读的ch1是这个整数的高8bit,故前移(4×8-8×1=24),同理ch2 前移(4×8-8×2=18)位
public final int readInt() throws IOException {
int ch1 = in.read();
int ch2 = in.read();
int ch3 = in.read();
int ch4 = in.read();
if ((ch1 | ch2 | ch3 | ch4) < 0)
throw new EOFException();
return ((ch1 << 24) + (ch2 << 16) + (ch3 << 8) + (ch4 << 0));
}
本文详细介绍了如何使用输入流一次读取一个字节来组成一个整数的方法。通过四个步骤逐步读取每个字节,并通过位移操作将它们组合成一个完整的32位整数。

829

被折叠的 条评论
为什么被折叠?



