了解C#中的通用列表
存储和管理项目集合是一个例行编程任务。几乎每个应用程序都必须处理具有共同特征的一组数据。这组数据可以是登录网站的用户配置文件,来自数据库表或简单内存对象的记录。为了处理这些数据集,.NET Framework包含通常称为集合的特殊类。
这些集合用于存储和管理数据集。.NET Framework中有两种类型的集合:位于System.collections.generic命名空间中的旧非通用集合.Collections.generic命名空间。
什么是通用列表(列表
通用列表是System.Collections.Generic命名空间中可用的许多通用集合之一,并且最广为人知,最广为人知,它可以基于索引查询集合的能力。在技术术语中,写入通用列表被称为列表
实例化列表
实例化或创建列表的对象
list
但是,您也可以在不添加元素的情况下实例化上面的列表。在这种情况下,将在稍后添加元素。
例如,您可以使用以下代码实例化字符串列表:
列表
将元素添加到列表
添加和插入是将元素添加到列表
以下示例,演示了这四种方法的使用。
列表
国家.ADD(“美国”);
国家.Addrange(New [] {“英国”,“加拿大”,“澳大利亚”});
CILIRNES.NERSERT(1,“法国”);
Cirencition.Insertrange(3,New [] {“德国”,“中国”,“俄罗斯”});
添加方法首先添加“USA”,然后Addrange将添加“英国”,“加拿大”和“澳大利亚”。但是,INSERT方法将在第一个索引处添加“法国”,因为“1”已作为指定索引的第一个参数传递。“法国”将取代“英国”和“法国”之后的所有元素都将向右转移一个指数。类似地,当用启动索引3调用inserrange时,元素将从元素“加拿大”占用的索引开始。如果执行上述代码,则列表将包含以下订单的元素:美国,法国,英国,德国,中国,俄罗斯,加拿大和澳大利亚。
从列表
从列表
list
CORINANDS.REMOVE(“英国”);
CILILASE.REMOVEAT(1);
国家/地区.Removerange(1,2);
在上面的示例中,删除(“英国”)方法将从列表中删除“英国”。然后,删除(1)将从列表中删除“加拿大”,因为在删除“英国”后,“加拿大”将在第一款指数。雷弗兰(1,2)将移除“澳大利亚”和“法国”,因为它们将在“加拿大”被删除后的索引1开始的前两个元素。
通过LINQ枚举列表
通用列表列表
list
foreach(string in in国家)
{
console.writeline(续);
}
收藏的真正力量伴随着,可以通过LINQ查询来查询它们。例如,您可以使用Linq运算符“在其中”以查找以其名称的“A”以“A”结尾的所有国家。这与LINQ查询运算符非常容易做到,并且已在下一个示例中解释。
list
Ienumable
foreach(String in indingwitha)
{
console.writeline(续);
}
对于上面的代码片段工作,必须导入System.Linq命名空间,因为“其中”纯粹是LINQ运算符。Lambda表达式作为参数传递给“其中”运算符。此Lambda表达式实际上基于应筛选的列表
在列表中使用orderby linq运算符
使用linq运算符的另一个例子
list
Ienumable
foreach(String in in Orderedcoll)
{
console.writeline(续);
}
在这里,已在“国家”集合上呼吁orderby,并指定为参数的谓词说明根据升序订购集合。输出将是集合中的所有元素,从“英国”开始为第一个元素(具有最小长度的元素),并以“澳大利亚”为最后一个元素(长度最大的元素)。
在C#中了解有关通用列表