java byte[] 动态增加问题

fuly_ABC 2011-12-01 05:34:34
有一个类方法只接受一个固定128长度的byte数组 在传数组的时候小于和大于128都会报错 也就是说如果传小于128的数据就要自己补位了 我将一个字符串转换为byte[]之后长度不够 有没有办法让byte[]动态扩充呢?
...全文
5086 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
龙腾冰 2011-12-01
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 jingluo 的回复:]

Java code
ByteBuffer bb = ByteBuffer.allocate(128);
[/Quote]
这个可以试试呢

此类针对字节缓冲区定义了以下六类操作:

读写单个字节的绝对和相对 get 和 put 方法;

将此缓冲区的连续字节序列传输到数组中的相对批量 get 方法;

将 byte 数组或其他字节缓冲区中的连续字节序列传输到此缓冲区的相对批量 put 方法;

读写其他基本类型值,并按照特定的字节顺序在字节序列之间转换这些值的绝对和相对 get 和 put 方法;

创建视图缓冲区 的方法,这些方法允许将字节缓冲区视为包含其他基本类型值的缓冲区;

对字节缓冲区进行 compacting、duplicating 和 slicing 的方法。
yiliang1990 2011-12-01
  • 打赏
  • 举报
回复
你就设置一个 len=该数组的长度,
2399 2011-12-01
  • 打赏
  • 举报
回复
这和list的性质一样的嘛,可以判断下就行。大了就又new一个byte数组咯
Mourinho 2011-12-01
  • 打赏
  • 举报
回复
将字符串转换为byte[]后,设长度为a,加入list.然后加入一个空的,长度为128 - a的Byte[]数组,最后将整个list转换成长度为128的byte数组。
jingluo 2011-12-01
  • 打赏
  • 举报
回复
ByteBuffer bb = ByteBuffer.allocate(128);
薛定谔之死猫 2011-12-01
  • 打赏
  • 举报
回复
新建128长度的byte数组,把元素逐个拷入,不足增加,多了不理会,之后用新的数组对象顶替原先参数~

62,635

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧