关于位移不太懂
在JDK中复制这一段程序: public final short readShort() throws IOException {
int ch1 = in.read();
int ch2 = in.read();
if ((ch1 | ch2) < 0)
throw new EOFException();
return (short)((ch1 << 8) + (ch2 << 0));
}
最后一句: return (short)((ch1 << 8) + (ch2 << 0));中的(ch1 << 8) + (ch2 << 0)是二进制形式吗?
----------------解决方案--------------------------------------------------------
二个二进制数相加之后又是什么,好像没听说过,高手解释!
----------------解决方案--------------------------------------------------------
3的二进制数0....011(中间还有28个0) 3<<8=0...01100000000则这时有8个0加到后面,而前面则相对应的减少8个0,前的0可以不理
二个二进制数相加:eg:011+001=100 相当于3+1=4
不知道这样说你懂不??
我也不知道怎么说好!~
----------------解决方案--------------------------------------------------------