gpt4 book ai didi

java - 如何创建将数组放入新数组的集合构造函数

转载 作者:行者123 更新时间:2023-12-01 14:03:48 24 4
gpt4 key购买 nike

我需要一个来创建集合构造函数。这是一个构造函数,将其所有元素从我的数组复制到新的 TimeArrayList 中。

到目前为止我的构造函数看起来像这样

private E[] timeData;
private int capacity = 0;

public TimeArrayList(Collection<? extends E> c) {
timeData = (E[]) new Object[capacity];
for (int i = 0; i < timeData.length; i++) {
//this is where im having the problem
}
}

我不知道如何从数组中获取值并创建数组列表。我想我还必须在某个地方放入迭代器。

最佳答案

获取类型数组的最简单方法首先,您需要为数据分配空间:

timeData = new (E[]) new Object[c.size()];

之后可以添加c的内容,例如:

编辑:更改为使用 toArray,如评论中指出的那样。

c.toArray(timeData);

但实际上,最简单的方法是利用标准库并忘记手动使用数组:

List<E> timeData;
...
// and in constructor:
timeData = new ArrayList<E>(c);

关于java - 如何创建将数组放入新数组的集合构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19103057/

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