使用byte数组读取文件的返回值,在数组被填充完的时候返回值是啥?在已经读取到流末尾,数组未被填充完的时候返回值是啥?什么时候返回-1,根据我的理解,是不是等到数组中数据为空的时候返回值是-1?
登陆购买课程后可参与讨论,去登陆吧
同学您好,
数组被填充完的时候返回值是数组的长度
数组未被填充完的时候是本次读取操作实际读取到的字节数
仅当本次读取操作没有读取到任何数据(读取到文件尾)的时候返回值是-1
同学可以将我们的3-3与3-4的知识进行回顾一下
祝同学学习愉快~
while((n=fis.read(bytes))!=-1)这个语句中的n不就是返回值么?为什么这个n可以用作字节输出方法write的参数表示输出字节的长度?
这里是老师理解错误,并对上述问答进行了修改
同学代码中的n为本次读取操作实际读取到的字节数。在write(byte[],off,len)方法中,为了防止数据写出量大于实际读取量的情况发生,我们使用n作为第三个参数。
感谢老师的悉心解答
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
登录后可查看更多问答,登录/注册
综合就业常年第一,编程排行常年霸榜,北上广深月薪过万! 不需要基础,无需脱产即可学习,只要你有梦想,想高薪! 全新升级:技术栈升级(包含VUE3.0,ES6,Git)+项目升级(前后端联调与功能升级)
79 1
56 1
9 1
14 1
56 9
在线咨询
领取优惠
免费试听
领取大纲
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星