我正在重构一个涉及传递大量数组的项目。目前,每个返回数组的方法都会在返回之前对其进行排序。这并不理想有几个原因——有很多重复的代码,对数组排序两到三次效率低下,编写新函数太容易但忘记在返回之前对数组进行排序。
我正在寻找一种方法来保证数组始终按字母顺序排列。我目前的想法是子类化NSMutableArray
和/或NSArray
创建一个按字母顺序排列的数组类。我需要覆盖所有创建或修改要调用的数组的方法,super
然后对其进行排序。
这听起来合理吗,还是有更好的方法?
编辑:由于提到了性能问题,我将包含我项目中的相关信息。速度不是一个重要的问题。整个过程只需要几秒钟,而且该工具只是经常使用。所以简单和明显的正确性更重要。
此外,数组的用例是特定的。当返回一个数组时,调用者总是至少访问数组中的每个元素一次。