java 问题,下面的代码怎么意思?为什么要这样写,目的是什么?

byte[]len=newbyte[4];dis.read(len);intl=Integer.valueOf(newString(len).trim());InputS... byte[] len = new byte[4];
dis.read(len);
int l = Integer.valueOf(new String(len).trim());
InputStream dis = null;
展开
 我来答
lzsh2197
2013-01-16 · 超过10用户采纳过TA的回答
知道答主
回答量:41
采纳率:100%
帮助的人:25.5万
展开全部
dis是什么类创建的对象?
byte[] len = new byte[4];表示字节数组,大小为4,
int l = Integer.valueOf(new String(len).trim());中,
new String(len).trim());创建新的字符串,.trim()表示去了空格;
Integer.valueOf将字符串转为整形
追问
InputStream   dis = null;
追答
InputStream 是用来从 CDR 编组流中读取 IDL 类型的 Java API;
dis.read();从输入流中读取数据的下一个字节。返回 0 到 255 范围内的 int 字节值。如果因为已经到达流末尾而没有可用的字节,则返回值 -1。在输入数据可用、检测到流末尾或者抛出异常前,此方法一直阻塞。
InputStream 没有带参的read(参数)方法。你用错了
lmy_sk521
2013-01-16 · TA获得超过2272个赞
知道小有建树答主
回答量:1330
采纳率:73%
帮助的人:802万
展开全部
byte[] len = new byte[4];//定义长度为4的字节数组
dis.read(len);//从输入流中读取4个字节,并将其存储在数组 len 中
int l = Integer.valueOf(new String(len).trim());//先将len转成字符串,去掉前后空格,再转成int值
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hdparrot
2013-01-16 · TA获得超过2404个赞
知道小有建树答主
回答量:1385
采纳率:0%
帮助的人:1238万
展开全部
读取Int类型的数据,因为int是32位的,也就是4字节,所以一次读取一个int值,就是取4个字节。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
怀念黑海岸
2013-01-16 · TA获得超过455个赞
知道答主
回答量:76
采纳率:0%
帮助的人:35.5万
展开全部
意思就是读取一个具有四个bite,然后通过read方法将其连接成一个inputStream,最后转化成整数l。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式