在我的代码中,我有一个处理某些数据的函数,然后返回一个应该排序的列表。我有2个退货选项: - SortedSet - 列表(但将进行排序)
到目前为止,对此返回类型执行的唯一操作是迭代。
SortedSet的参数: - 它强制返回的项目进行排序 - 这意味着返回的项目已经过排序
列表的参数: - 调用者不需要Set(及其复杂的功能),他只需要一个承诺要排序的项目列表。 - 保持界面简单(没有SortedList)
您怎么看?
答案 0 :(得分:4)
为什么不返回IEnumerable? 这样,您的其他功能不必担心使用特定的SortedSet或List。 处理IEnumerable也比处理特定对象更简单,通常使用接口是一种很好的做法,因为通常会为您的类和项目增加灵活性,使它们更具可伸缩性。