本帖最后由 ﹊佑雨时杰↘ 于 2014-4-27 23:34 编辑
下面的代码是模拟的字节流缓冲区中read() 方法 小弟小写不解之处:
- int count = 0,pos = 0; //count记录数组存放多少字节,pos记录当前指针的位置(准备取第几个)
- public int read() throws IOException
- {
- byte b; // 本次读取的字节
- if(count==0)
- {
- pos = 0;
- count = is.read(by);
- if(count<0)
- return -1;
- if(count>0)
- {
- b = by[pos];
- count--;
- pos++;
- return b&255;
- }
- }
- else if(count>0)
- {
- b = by[pos];
- count--;
- pos++;
- return b&0xff;
- }
- return -1;
- }
复制代码
求解 16行和25行return b&255或b&0xff原因:
|