if (count == 0) {
count = in.read(buf);
if(count<0)
return -1;
pos = 0;
byte b = buf[pos];
count--;
pos++;
return b&255;
}对这两个判断语句,判断count==0的目的是:看是否从流中读取了数据,ifcount==0,说明没有读取数据,接下来就要开始读取数据了,通过count = in.read(buf)将读取的字节数赋给count;count<0,是为了防止通过count--使count的值小于0,如果count<0,就return -1;来终止读取,这是我的理解。 |