gpt4 book ai didi

c# - 继承ICollection的最基本的类是什么

转载 作者:太空狗 更新时间:2023-10-30 01:27:28 26 4
gpt4 key购买 nike

我需要一个可以添加和枚举的通用集合类。自 ICollection<T>继承自 IEnumerable<T> , 该类实际上只需要继承 ICollection<T> . BCL中是否有一个简单的泛型类只是继承ICollection<T>像 CollectionBase 的通用版本?如果不是,那么哪个类(class)最接近?

我猜 List<T>这是我一直在使用的,但我不需要顺序方面。有什么更好的(我的意思是[更小的内存占用/更快的访问/更简单])?如果有包,那就太完美了。

编辑 1: 在我的特定实例中,我是 .concat转到另一个 IEnumerable,对其进行查询,然后显示结果(无特定顺序)。我不是想自己上课。我只是需要多次收集一次性用品,所以我认为找到最好的一次性用品会很有用。因为我觉得我已经做过很多次类似的事情,所以我觉得我应该让这个问题尽可能通用(没有双关语意),我现在知道得更清楚了。

编辑 2: 感谢大家的回答,正如@BlueRaja 所指出的,任何简单的类都会有大致相同的开销,因此我认为我会坚持我原来的使用方式List<T> .因为它们都差不多,所以我的愚蠢理由“打字更容易”和“我不必引入另一种使用”并不是那么糟糕的理由。

最佳答案

[smaller memory footprint/faster access/simpler]

它们都将具有几乎相同的内存占用,并且如果您使用 ICollection,接口(interface)将不会改变。

真正重要的是哪种扩展最适合您需要的操作:链表可以更好地添加/删除(头/尾元素),而基于数组的列表具有随机访问。还有其他结构 - 您应该使用哪种结构取决于您的应用程序。

关于c# - 继承ICollection<T>的最基本的类是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2762288/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com