Tag: 集合

C#:List <T>和Collection <T>之间的区别(CA1002,不要公开通用列表)

试图在这里运行一个项目的运行代码分析,并得到了一些这样的警告: CA1002:Microsoft.Design:更改“ SomeClass.SomeProtectedOrPublicProperty ”中的“List < SomeType >”以使用Collection,ReadOnlyCollection或KeyedCollection 为什么我应该使用Collection<T>而不是List<T> ? 当我看到msdn文档时,他们看起来几乎是平等的。 在阅读警告的错误帮助后,我发现 System.Collections.Generic.List(T)_是为性能而devise的通用集合,而不是inheritance,因此不包含任何虚拟成员。 但是这是什么意思呢? 我该怎么做呢? 我应该在内部继续使用List<T> ,然后在属性中返回一个new Collection<T>(someList)吗? 还是应该开始使用Collection<T>而不是List<T> ?

在C#中过滤集合

我正在寻找一种非常快速的方式来过滤在C#中的集合。 我目前正在使用通用的List <object>集合,但如果它们执行得更好,我可以使用其他结构。 目前,我只是创build一个新的List <object>,并循环通过原始列表。 如果过滤标准匹配,我把一份副本放入新列表中。 有一个更好的方法吗? 有没有办法过滤到位,所以没有临时名单要求?

在java中最好的方法将列表转换为逗号分隔的string

我有Set<String> result ,并希望将其转换为逗号分隔的string。 我的方法如下所示,但也寻找其他意见。 List<String> slist = new ArrayList<String> (result); StringBuilder rString = new StringBuilder(); Separator sep = new Separator(", "); //String sep = ", "; for (String each : slist) { rString.append(sep).append(each); } return rString;

在Java中validation空集合和空集合的最佳实践

我想validation一个集合是否为空并且为null 。 任何人都可以让我知道最佳做法。 目前,我正在检查如下: if (null == sampleMap || sampleMap.isEmpty()) { // do something } else { // do something else }

快捷方式创build从Groovy列表中的地图?

我想要一些这样的手段: Map rowToMap(row) { def rowMap = [:]; row.columns.each{ rowMap[it.name] = it.val } return rowMap; } 鉴于GDK的东西,我希望能够做到这样的事情: Map rowToMap(row) { row.columns.collectMap{ [it.name,it.val] } } 但我还没有看到任何文件…我错过了什么? 还是我太懒惰?

我可以使用Dictionary <TKey,TValue>条目的集合初始值设定项吗?

我想为下一个代码使用一个集合初始值设定项: public Dictionary<int, string> GetNames() { Dictionary<int, string> names = new Dictionary<int, string>(); names.Add(1, "Adam"); names.Add(2, "Bart"); names.Add(3, "Charlie"); return names; } 所以通常应该是这样的: return new Dictionary<int, string> { 1, "Adam", 2, "Bart" … 但是,这是什么正确的语法?

如何迭代一个TreeMap?

可能重复: 如何迭代Map中的每个条目? 我想遍历一个TreeMap ,并为所有具有特定值的键,我想他们被添加到一个新的TreeMap 。 我怎样才能做到这一点?

有没有更安全的方式添加一个项目到Dictionary <>?

我需要添加键/对象对字典,但我当然需要先检查是否已经存在的密钥,否则我得到一个“ 密钥已经存在字典 ”的错误。 下面的代码解决了这个问题,但是笨重。 没有像这样做一个string帮助器方法是什么更优雅的方式呢? using System; using System.Collections.Generic; namespace TestDictStringObject { class Program { static void Main(string[] args) { Dictionary<string, object> currentViews = new Dictionary<string, object>(); StringHelpers.SafeDictionaryAdd(currentViews, "Customers", "view1"); StringHelpers.SafeDictionaryAdd(currentViews, "Customers", "view2"); StringHelpers.SafeDictionaryAdd(currentViews, "Employees", "view1"); StringHelpers.SafeDictionaryAdd(currentViews, "Reports", "view1"); foreach (KeyValuePair<string, object> pair in currentViews) { Console.WriteLine("{0} {1}", pair.Key, pair.Value); } Console.ReadLine(); } } public […]

Dictionary和Hashtable之间的区别

可能重复: 为什么Dictionary在C#中比hashtable更受欢迎? Dictionary和Hashtable有什么区别? 如何决定使用哪一个?

我如何初始化Java中的所有零的ArrayList?

看起来像arraylist没有完成它的工作presizing: // presizing ArrayList<Integer>() list = new ArrayList<Integer>(60); 之后当我尝试访问它时: list.get(5) 它显示为空而不是0.是否有一种方法来初始化所有元素为0像一个确切的大小像C + +呢?