Java:在Byte Stream中循环

Rad*_*zic 0 java file-io while-loop

有人可以解释为什么循环检查条件是否不同于-1?

while ((c = in.read()) != -1) {
    out.write(c);
}
Run Code Online (Sandbox Code Playgroud)

Fra*_*dez 6

请参阅:http://docs.oracle.com/javase/7/docs/api/java/io/ByteArrayInputStream.html#read()

当没有更多字节要读取时,read方法返回-1