中易网

Java:InputStream中的read()返回int类型的疑问

答案:3  悬赏:70  
解决时间 2021-01-20 23:53
Java:InputStream中的read()返回int类型的疑问
最佳答案
人家是把取出来的byte直接放在int的低8位里面,全部都是二进制01串,你要怎么操作怎么理解那一串是什么东西就是你自己的事了。。。

不过一般java还真很少去这样子搞操作,inputstream是个抽象类,
public abstract int read() throws IOException; 这个方法是没有内容的,调用的时候实际上是调的子类的实现
全部回答
C++有unsigned,java没有
这跟接口设计有关,read()设计时就决定返回-1表示流结束,为啥要用read()返回-1表示流结束而不是再加1个函数譬如eof()呢,我认为是因为函数调用成本很高,尤其是native函数,为了效率同时又简单清晰,所以决定读取字节时均返回正整数,而流结束则返回-1
c++的unsigned byte与java的byte对应关系没错,jvm内部byte是用补码实现的,譬如128的2进制为10000000,它对应的数为128取反再加1再取其负数,10000000取反=0可以这样认为的。
单纯这样看问题,帮助不是很好。在实际应用中,更有意义。如,一个C++的服务器端、java的客户端,这样的环境。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
2G 3G 4G 是网络信号问题 还是说手机卡分3G 4
求魔兽未加密地图,纯研究~~不知道怎么搞AI=
想研究期货,应该看什么书?请介绍一下.
海南三亚第一市场海鲜那家加工好吃
,地暖进水管很热而回水管很凉,已经放过很多
学校金融管理专业怎么样?
想春节前后,带父母(70岁)去东南亚旅游,求
42岁属什么的?
逗小猴开心大冒险怎么玩
第六自然段运用了哪些说明方法?
请问尿床儿童要检查什么事项?
文章排版如何插入页码
求股票KDJ的D值大于20度的选股公式
小孩鼻子头有小白点怎么回事
海林网苑地址好找么,我有些事要过去
推荐资讯
求份坡屋面瓦施工方案
急需LOL打手 白银4到黄金5 先打后钱 谢谢了
07上海海关学院招生分数线是多少?
鹤洲学校地址有知道的么?有点事想过去
围棋什么牌子好
excel中,if函数中,or和and的区别
狄拉克δ函数的多维δ函数
爸妈要我交五万元钱,怎么办,交不上去怎么办
来力桌球室地址在什么地方,想过去办事
这才是酒入愁肠人已醉,平白诓架为何请!啊,为
哪位说说蹲便器冲不干净怎么办
胸口胎记可以去掉吗?
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?