【发布时间】:2011-11-23 14:37:15
【问题描述】:
在我的例子中,我有一个 2D ArrayList 对象,其中包含在绘制水平线、垂直线和填充矩形时使用的数据。在不同的情况下,对象的数量是不同的,图像中绘制的线条和矩形的数量也不同。但有时需要重新绘制图像。重绘的东西越多,屏幕上的闪光就越强(我希望你能明白我所说的“闪光”是什么意思)。
我已经尝试过双缓冲,但我认为我做得不对 - 闪光灯的类型只会改变......但这不是目前的情况。
我读到从 ArrayList 的任何位置添加和删除元素(无论类型如何)都很容易,但很难访问它们。我还读到 List 比 ArrayList 性能更好(这是否意味着程序将需要更少的计算机资源?),但从最后添加和删除元素很容易。但我不确定 Array 的性能是否是最快的。这让我觉得如果我用 Array 或 List 更改 ArrayList,闪光会变弱。
在我的情况下不会有问题,因为我存储在 ArrayList 中的所有元素都是同一个类。
我的问题是:如果我将 ArrayList 替换为 Array 或 List 是否可以削弱闪光?
【问题讨论】:
标签: c# arrays winforms list arraylist