我每隔400毫秒接收一次来自网络的浮点数据,并将其放入4个浮点数组中。余存储在另一个阵列的那些阵列,所以我有:保存数据的列表
float[][] datas = {data1, data2, data3, data4};
FloatData floatData = new FloatData(datas);
model.addFloatData(floatData);
我的模型具有FloatData对象的列表和FloatData对象具有方法:
float[] getFloatData(int index);
返回浮点数的数组,我想。这个数组用于在JPanel上绘制。 所以在painComponent我做到以下几点:
for(FloatData floatData : listOfFloatData) {
floatData.draw(g, index);
}
我的问题是,我可以使用什么样的列表为listOfFloatData,因为它会每400毫秒中的paintComponent方法来更新和阅读? 此外,我想知道一个方便的方式将listOfFloatData从模型传递到我的视图?我正在考虑使用一个持有listOfFloatData的单例对象,因为这个列表将在几个组件中使用? 谢谢。
你有问题吗? – woliveirajr
对于您的计算机,400毫秒是相当长的时间。使用标准Java List实现(例如java.util.ArrayList),您是否遇到过任何类型的性能问题?或者在知道存在任何性能问题之前尝试优化列表? –
试图优化并提供一些建议,如果有更好的方法。时间也可能是200毫秒。我还没有尝试过,因为我不知道我会如何将它传递给我的观点。 – LionO