添加到 Java 列表中的系列
Adding to a series within a List in Java
我正在使用 JFreeChart 做一些绘图。用于管理数据的 class 之一是 TimeSeries
。还有一个 class TimeSeriesCollection
里面有一个 List
的 TimeSeries
。
TimeSeries
有一个方法 add()
可以很容易地在最后抛出一个新的数据点,而 TimeSeriesCollection
没有。我想在 TimeSeriesCollection
中添加一个方法,为它的每个 TimeSeries 调用 add()
函数,但是,我不太熟悉在 Java 中使用列表。
据我所知,一种可能的方法是 get()
每个 TimeSeries
,调用它的 add()
方法,然后 set()
将其返回到列表。但这似乎效率很低。是否可以直接调用List中元素的方法?
您可以使用 foreach 循环为每个 TimeSeries 调用 add 方法:
for (TimeSeries timeSeries: TimeSeriesCollection.timeSeriesList) {
timeSeries.add(datapoint);
}
您甚至不必设置对象,您可以修改回 TimeSeriesCollection 中的列表,因为您没有创建元素的副本。您正在直接修改列表中的对象引用。
我正在使用 JFreeChart 做一些绘图。用于管理数据的 class 之一是 TimeSeries
。还有一个 class TimeSeriesCollection
里面有一个 List
的 TimeSeries
。
TimeSeries
有一个方法 add()
可以很容易地在最后抛出一个新的数据点,而 TimeSeriesCollection
没有。我想在 TimeSeriesCollection
中添加一个方法,为它的每个 TimeSeries 调用 add()
函数,但是,我不太熟悉在 Java 中使用列表。
据我所知,一种可能的方法是 get()
每个 TimeSeries
,调用它的 add()
方法,然后 set()
将其返回到列表。但这似乎效率很低。是否可以直接调用List中元素的方法?
您可以使用 foreach 循环为每个 TimeSeries 调用 add 方法:
for (TimeSeries timeSeries: TimeSeriesCollection.timeSeriesList) {
timeSeries.add(datapoint);
}
您甚至不必设置对象,您可以修改回 TimeSeriesCollection 中的列表,因为您没有创建元素的副本。您正在直接修改列表中的对象引用。