gpt4 book ai didi

java - 如何计算存储在 *.ser 文件中的对象数

转载 作者:搜寻专家 更新时间:2023-11-01 00:53:22 28 4
gpt4 key购买 nike

我正在尝试读取存储在 *.ser 文件中的所有对象并将它们存储在一个对象数组中。如何获取存储在该文件中的对象数量(以便我可以将数组声明为 number_of_objects 长)?

我检查了 API,但找不到所需的函数。

-编辑-
A部分代码:

Ser[] objTest2 = new Ser[number_of_objects];
for(int i=0; i<=number_of_objects, i++) {
objTest2[i] = (Ser)testOS2.readObject();
objTest2[i].printIt();
}

最佳答案

你要看的是ArrayList类。

它基本上是一个动态增长的数组。

您可以像这样向其中添加项目:

ArrayList list = new ArrayList();
list.add(someObject);
list.add(anotherBoject);

列表会随着您向其中添加新项目而增长。因此您不必提前知道尺寸。

如果List在末尾,你需要得到一个数组,你可以使用List的toArray()方法。

Object[] arr = list.toArray(new Object[list.size()]);

编辑:
这是您需要的一般实现:

List<Ser> objTest2 = new ArrayList<Ser>();
while (testOS2.available > 0) {
Ser toAdd = ((Ser)testOS2.readObject());
toAdd.printIt();
objTest2.add(toAdd);
}

*我不认为 available() 是判断是否有更多字节要读取的可靠测试。

关于java - 如何计算存储在 *.ser 文件中的对象数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3237659/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com