第一和第二循环之间有什么区别;
package standard;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class practice {
public static void main(String args[]) throws IOException
{
FileInputStream f=new FileInputStream("F:\\a.txt");
它的第一个while循环,里面有一个int
int s;
while((s=f.read())!=-1)
{
System.out.print((char)s);
}
这是第二次循环
while(f.read()!=-1)
{
System.out.print((char)f.read());
}
}
}
第一个while循环在循环条件中将一个字节读入变量并检查它是否不等于-1,然后在循环体中打印该变量。
第二个while循环读取一个字节,检查它是否不等于-1,然后读取循环体中的下一个字节并打印它。
因此,第一个循环打印整个文件,而第二个循环打印文件的一半字节。
在第一个循环中,您将f.read()
的结果保存到s变量中,而不是将System.out.println()
保存到结果中。
在第二个你不保存第一个f.read()
的结果和仅为文件中的每一秒咬一次System.out.println()
关于你在while loop
条件下阅读的第一个while loop
,并将其分配到变量s
,你是type casting
,它是一个字符并打印它。
但是在第二个while loop
你在while loop
条件下读了两次,第二次在你印刷和type casting
它到char
并打印它。在第二种情况下,您将每次迭代仅打印第二个字符。如果你在第一个abcd
输入像while loop
它将打印abcd
但在第二个while循环它将只打印bd
。
在两个while loop
条件中常见的是你正在检查-1
打破循环。