java - 如何在 Java 中将 byte[] 存储在 Vector 中?

标签 java arrays vector byte

我正在读取二进制文件并将每条记录存储到 byte[] 中。现在我想将这些记录收集到一个 Java Vector 中。 (这样它就可以无限增长。)但是 Vector 采用 Objects,而不是基元(或基元数组,据我所知)。

有没有办法“装箱”基元数组,或者我是否必须重写我的代码以将我的数组变成Arrays,并将我的字节变成Bytes

我尝试将字节连接成一个 String,但失败得很惨,因为 String.append() 倾向于将我的字节视为整数并进行转换转换为 String-y 十进制表示!!

最佳答案

byte[] 是一个 Object(所有数组都是,甚至是原始数组)。没有什么能阻止您将 byte[] 添加到 Vector

Vector<byte[]> records = new Vector<byte[]>();
byte[] firstRecord = readRecord();
records.add(firstRecord);

虽然它闻起来不像是一个好的设计。此外,您应该更喜欢传递 List(接口(interface))而不是传递 Vector(List 的具体实现)。

关于java - 如何在 Java 中将 byte[] 存储在 Vector 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6444770/

相关文章:

java - 来自 JTextArea Java 的 ActionListener

java - Jackson 多态集合序列化多步避免类型删除

javascript - 读取外部本地 .txt 文件以将数据加载到数组中

c++ - 创建包含唯一元素的优先级队列

Java - 调用的paintComponent将在运行时被读取但不被实现

java - 将两个已排序的 Arraylist 合并为一个已排序的 Arraylist

javascript - obj.key=value 和 obj.set(key, value) 之间的区别?

javascript - 如何检查数组中的单词是否存在于给定字符串中

c++ - 将 uint8_t 的 vector 转换为位集

vector - 如何计算值向量的差值的最小值?