如果我有一个自定义对象的ArrayList,我需要能够以各种排序方式显示它们(例如4种类型,所以4个比较器使用对象的正确成员变量进行排序)效率最高的是什么这样做的方法?
我不认为根据特定比较器排序的4个对象的数组列表是最佳的
还有另一种比这更有效的方法吗?
请注意,我需要将这些对象同时排序,因为它们将显示在同一页面中。所以我无法按需排序
答案 0 :(得分:0)
您可以使用包含整数的不同索引数组作为原始ArrayList
的索引。这些可以用不同的方式分类。
要访问列表元素,请使用以下内容:
list.get(index1.get(i));
答案 1 :(得分:0)
我猜FlyWeight design pattern符合您的期望。
Flyweight模式主要用于减少创建的对象数量,减少内存占用并提高性能。这种类型的设计模式属于结构模式,因为这种模式提供了减少对象数量的方法,从而改善了应用程序的对象结构。
当您在ArrayList中拥有对象时,您可以构建尽可能多的ArrayLists,作为存储flyweight对象所需的各种排序(基本上是id,order)。