ここの11ページのコードを見ていますhttp://www.cs.usfca.edu/~parrt/doc/java/JavaIO-notes.pdf
1つのステートメントに問題があります。割り当ての結果は左辺値だと思いました。したがって、 ((byteRead = inFile.read()) != -1) は (inFile.read()) != -1) と同じになるはずです。出力を見ても、これは当てはまらないようです。だから私の質問は、ステートメント ((byteRead = inFile.read()) != -1) はどのように解析されるのですか?
編集:応答から、割り当ての結果の現在の解釈があったようです。コードフラグメントを置き換えることで何がうまくいかないのか疑問に思っていました
int byteRead;
while((byteRead = inFile.read()) != -1)
outFile.write(byteRead);
と
while( inFile.read() != -1)
outFile.write( inFile.read());