这段WHILE语句怎么理解?while ((bytes = in.read(bteFile)) != -1){out.write(bteFile, 0, bytes);}JAVA中的,之前没见过这种.特别是这个条件判断((bytes = in.read(bteFile)) != -1)这个((bytes = in.read(bteFile))的意思是将值赋

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/01 01:02:50
这段WHILE语句怎么理解?while ((bytes = in.read(bteFile)) != -1){out.write(bteFile, 0, bytes);}JAVA中的,之前没见过这种.特别是这个条件判断((bytes = in.read(bteFile)) != -1)这个((bytes = in.read(bteFile))的意思是将值赋

这段WHILE语句怎么理解?while ((bytes = in.read(bteFile)) != -1){out.write(bteFile, 0, bytes);}JAVA中的,之前没见过这种.特别是这个条件判断((bytes = in.read(bteFile)) != -1)这个((bytes = in.read(bteFile))的意思是将值赋
这段WHILE语句怎么理解?
while ((bytes = in.read(bteFile)) != -1)
{
out.write(bteFile, 0, bytes);
}
JAVA中的,之前没见过这种.
特别是这个条件判断
((bytes = in.read(bteFile)) != -1)
这个((bytes = in.read(bteFile))的意思是将值赋给bytes对吧,但是最外层又加了一堆括号是什么意思?表示的是里面赋值成功返回1么?为什么是-1?
应该理解成bytes = in.read(bteFile),然后看看byte的值是否等于-1么?

这段WHILE语句怎么理解?while ((bytes = in.read(bteFile)) != -1){out.write(bteFile, 0, bytes);}JAVA中的,之前没见过这种.特别是这个条件判断((bytes = in.read(bteFile)) != -1)这个((bytes = in.read(bteFile))的意思是将值赋
功能就是说按文件每行读取
直至读完为止
程序理解是:
bytes = in.read(bteFile)是个赋值语句
bytes最终就是in.read(bteFile)的值
in.read(bteFile)读到最后一行没有数据时返回-1
所以bytes就等于-1了
而bytes != -1是判断语句 判断是否读完文件
---------------
也就是读文件常用的写法是这样
平时不建议这么写
程序可读性不好