collections相关内容

集合类型,例如初始容量字典,列表

在.net中的某些集合类型有一个可选的“初始容量”的构造函数的参数。例如: 词典<字符串,字符串>一些=新字典<字符串,字符串>(20); 名单<字符串>什么=新的名单,其中,串>(50); 我似乎无法找到默认的初始容量是什么MSDN上的这些对象。 如果我知道,我将只存储12左右的项目在字典中,没有有意义设置初始容量为类似20? 我的理 ..
发布时间:2015-11-24 15:27:12 C#/.NET

比较两个列表<字符串>平等

除了通过要素之一步进接一个,我怎么比较平等的字符串两个列表(在.NET 3.0): 这将失败: //预期的结果。 名单<字符串>预计=新的名单,其中,串>(); expected.Add(“一”); expected.Add(“B”); expected.Add(“C”); //实际结果 ..
发布时间:2015-11-24 15:26:20 C#/.NET

.NET:ArrayList的VS名单

在VB.NET ArrayList和列表之间的区别是什么 解决方案 的ArrayList基本上是德precated因为它们是无类型 - 你需要使用注塑与他们 - 他们是慢和更小的空间有效的价值类型,因为他们需要的物品进行装箱。 泛型列表进行了介绍与.net 2.0,而且要走的路。通常,一个列表比数组好,有几个缺点。 由于这些藏品的.NET基础类库的一部分,这个建议也适用于C#和任何.NET ..
发布时间:2015-11-24 15:24:35 C#/.NET

难道一个列表< T>保证项目将在它们的添加顺序返回?

难道一个名单,其中,T> 始终保证项目将它们添加枚举时的顺序返回 更新的:感谢所有的答案乡亲,把我放心。我周围的列表℃的快速戳; T> 类.net反射(应该可能已经这样做了摆在首位),实际上底层的存储是数组 T ( T [] )。 解决方案 的列表是基于索引和新项目将总是被添加到列表的末尾。您可以在一定的指数插入项目,以便在未来的项目将移动一个位置。 所以是,你可以用它的安全的那 ..
发布时间:2015-11-24 15:22:37 C#/.NET

这是更好地使用数组或列表<>?

我想知道哪种类型将有更好的表现,哪些你认为应该使用。 例如我有一个字符串列表不知道我怎么会许多项目需要那么具有。新增(字符串)功能真的很方便。我可以在任何时候轻松地添加新的字符串到列表中。 有什么优势/使用每个缺点是什么? 是列出了新的阵列? 解决方案 更​​多情况下确实需要正确地回答这个问题: 在公开API ,你应该尝试使用抽象的集合类型,这样就可以在以后改变内部实现,如果你需要。 ..
发布时间:2015-11-24 15:20:41 C#/.NET

建立在C#中的常量词典

什么是最有效的方式来创建一个恒(永远不会改变在运行时)字符串的S映射到 INT S' 我使用的是我可以实现一个 对于那些谁问,我在生成的类实现IDataErrorInfo,并正在寻找一种方法,使COLUMNNAME查找到我的描述符的数组。 我不知道(错字测试时!D'哦!),该交换机接收字符串,所以这就是我要的使用。谢谢! 解决方案 创建一个真正的编译时产生在C#中恒字典是不是一个真正的简 ..
发布时间:2015-11-24 15:16:36 C#/.NET

什么是集合语义(在.NET)?

我需要保持集合语义在我自己的类。你能不能解释一下,什么是集合语义?据我了解,这是一组必须在一个类中实现一些接口。是真的吗?而如果是 - 什么正是我必须在类实现和为什么?这些是两个接口 - 的ICollection和IEnumerable - 足够,或者这些仅仅是最必要的呢? 我编程使用这是一个循环链表文章,为帮助。 解决方案 有.NET中许多集合类型,它们都具有一些共同的行为,例如: 您可 ..
发布时间:2015-11-24 15:09:27 C#/.NET

铸造一个泛型集合到基本类型

我有一个的IList< D​​erivedClass> ,我想转换为的ICollection< BaseClass的> 但是当我尝试显式转换,我得到空。是否有可能为此而不创建和填充新的集合? 编辑: 因为我只想从集合中读取,我转而使用泛型方法: 公共无效PopulateList< BaseClass的>(ICollection的< T>集合) ..
发布时间:2015-11-24 15:09:07 C#/.NET

这有什么错一个ArrayList?

最近,我问的SO一个问题,提到可能使用C#ArrayList的一个解决方案。一有人指出,使用一个ArrayList是坏的。我想更多的了解这一点。我从来没有听说过这个说法之前,有关的ArrayList。 可以sombody让我很快地就可能的性能问题,使用的ArrayList C#。 .NET-2 解决方案 与ArrayList中的主要问题是使用对象 - 这意味着你必须转换为从无论你是封装。它是 ..
发布时间:2015-11-24 15:05:49 C#/.NET

是否有可能创造一些IGrouping对象

我有名单,其中,IGrouping<字符串,字符串>> 时在某种程度上可能的新项目添加到这个名单?或者实际上,是有可能创造一些IGrouping对象? 解决方案 如果你真的想创建自己的 IGrouping< TKEY的,TElement> ,这是一个简单的接口实施 公共类MyGrouping< TKEY的,TElement> :列表< TEl ..
发布时间:2015-11-24 15:05:42 C#/.NET

这是更快:明确收集或实例化新

我在code泛型列表,有几十或几百元的一些数字。 有时候,我需要补充与其他物体这个名单,所以问题是:什么会更快,叫清除()方法,或创建一个新名单,其中; T>?() 解决方案 这将是更快,调用Clear()方法或创建一个新的列表()? 这是不可能回答。这真的取决于很多因素,包括多长时间的收集一直存在。 这里最好的办法是: 个人的应用程序,看看这个真的很重要。它可能不会做出任 ..
发布时间:2015-11-24 15:02:13 C#/.NET

应用[AutoFixture] SemanticComparison OfLikeness到序列/收藏/阵列/ IEnumerable的

我们已经写了一个测试,看起来像下面这样。这个测试需要,我们已经创建的连接等于 - 过载为 codeTableItem 级: 的ICollection< codeTableItem> expectedValutaList =新名单,其中codeTableItem>(); expectedValutaList.Add(新的codeTableItem(“DKK”,“DKK”)); e ..

如何检查是否IEnumerable的为空或空?

我爱 string.IsNullOrEmpty 方法。我很想有一些会允许IEnumerable的相同的功能。有没有这样的?也许有的收集辅助类?我问的原因是,在如果语句code看起来杂乱,如果图案是(mylist中= NULL和放大器;!&安培; mylist中。任何())。这将是更清洁的有 Foo.IsAny(myList上)。 这篇文章没有给出这个问题的答案:?。 IEnumerable的是空 ..
发布时间:2015-11-24 14:55:30 C#/.NET

所列出的< T>保证插入顺序?

说我有3字符串列表(如“1”,“2”,“3”)。 然后我要重新排序他们把“2”位置1(如“2”,“1”,“3”)。 我用这code(设置indexToMoveTo 1): listInstance.Remove(itemToMove); listInstance.Insert(indexToMoveTo,itemToMove); 这似乎工作,但我偶尔会得到奇怪的结果;有时候顺序不正 ..
发布时间:2015-11-24 14:47:55 C#/.NET

相交的)相反(

相交可以用来查找匹配两个集合之间,像这样: //指定两个数组。 INT [] ARRAY1 = {1,2,3}; INT [] ARRAY2 = {2,3,4}; //调用相交扩展方法。 VAR相交= array1.Intersect(ARRAY2); //写路口画面。 的foreach(在相交int值) { Console.WriteLine(值); //输出:2,3 } 不 ..
发布时间:2015-11-24 14:46:23 C#/.NET

列表,IList的,IEnumerable的,IQueryable的,ICollection的,这是最灵活的返回类型?

我在这里看到了这个问题贴pviously $ P $但我并不满足,我明白了完整的后果。问题是返回类型应该使用LINQ到SQL换取最大的灵活性和查询能力,数据层。这是我读过的/发现: IEnumerable的是有限的,只允许读进操作。 IEnumerable的是最通用的。我发现的是IEnumerable的确实允许查询操作VS的扩展语法。 列表允许,因为插入操作的最大的灵活性。 集合应该是用 ..
发布时间:2015-11-24 14:45:59 C#/.NET

什么.NET集合提供最快的搜索

我有60K项需要与一个20K查找列表检查。是否有一个集合对象(如列表,的HashTable ),它提供exceptionly快包含( )的方法?或者将我必须写我自己? 。换句话说,是默认的包含()方法只扫描每个项目或不会使用更好的搜索算法。 的foreach(在LargeCollection记录项) { 如果(LookupCollection.Contains(item.Key)) ..
发布时间:2015-11-24 14:45:19 C#/.NET

什么是替代泛型集合为COM互操作?

我试图从.NET程序集返回部门的集合是由ASP通过COM互操作所消耗。使用.NET我只想返回一个泛型集合,例如: 名单,其中,部> ,但似乎泛型不与COM互操作工作。那么,什么是我的选择? 我想这两个遍历列表,并可以通过索引访问的项目。我应该继承名单,其中,部> ,实施的IList ,的IList<部> 或其它接口,或者是有没有更好的办法?理想情况下我会preFER不具有 ..
发布时间:2015-11-24 14:38:24 C#/.NET

渐近.NET集合类的复杂性

是关于.NET集合类的方法(渐近复杂性(大O,其余)有什么资源词典< K,V> ,列表< T> 等...) 我知道,C5库的文档包含一些关于它的信息(的例如),但我感兴趣的是标准的.NET集合太...(和PowerCollections”的信息也将是不错的)。 解决方案 MSDN列出了这些: 名单,其中;> 等。例如: 的排序列表(TKEY的,TVal ..
发布时间:2015-11-24 14:34:55 C#/.NET

螺纹.NET安全的集合

什么是时下当需要一个线程安全的集合(如设置)的标准。 我是否同步它自己,或者是有一个固有的线程安全的集合? 解决方案 在.NET 4.0框架引入了 ConcurrentBag< T>      再presents对象的线程安全的,无序的集合。 ConcurrentDictionary< TKEY的,TValue>中    再 ..
发布时间:2015-11-24 14:28:56 C#/.NET