为了账号安全,请及时绑定邮箱和手机立即绑定

int b = InputStream.read();这个地方很不明白。

也就是int b = in.read();这不明白


正在回答

3 回答

http://img1.sycdn.imooc.com//59a6443600016fa211260620.jpg

如图所示,这个跟你调用的那个read()方法一样。看到返回值了吗,还有为什么返回-1也知道了吧~~

0 回复 有任何疑惑可以回复我~

你看API啊,它返回的是一个数据字节啊,没到末尾不会返回-1的

0 回复 有任何疑惑可以回复我~

InputStream是抽象类,read()方法是抽象的,再说这个read()也是实例相关的方法

int b = InputStream.read()  这么表述不合适,老师也没这么说吧。

应该这么理解:

FileInputStream in =new FileInputStream(new File("e:\\1.txt"))

int b = in.read();


2 回复 有任何疑惑可以回复我~
#1

AquanGeek 提问者

这里的int b = in.read(); in.read()为什么要赋值给b?
2017-05-10 回复 有任何疑惑可以回复我~
#2

guolaikankan 回复 AquanGeek 提问者

既然read()是读取数据的方法,当然要把读到的数据返回回来,赋值给一个变量b方便用于输出或是后续处理了,当然你不赋值给b也可以的,不过这样不是相当于没做什么实质操作吗?
2017-05-10 回复 有任何疑惑可以回复我~
#3

AquanGeek 提问者

大神我试过读文件时输出b,读到最后的b不是-1为什么?
2017-05-10 回复 有任何疑惑可以回复我~
#4

AquanGeek 提问者

大神我试过读文件时输出b,读到最后的b不是-1为什么?
2017-05-10 回复 有任何疑惑可以回复我~
#5

guolaikankan 回复 AquanGeek 提问者

你确定读到最后了?怎么读的,方便贴来看看吗?
2017-05-11 回复 有任何疑惑可以回复我~
查看2条回复

举报

0/150
提交
取消

int b = InputStream.read();这个地方很不明白。

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信