C# Linq的ToList()方法详解
ToList()
方法是C#中Linq查询的扩展方法之一,它将一个序列转换成一个List集合,实现方式是创建一个包含序列中所有元素的新实例。该方法的通用使用方式如下所示:
public static List<TSource> ToList<TSource>(this IEnumerable<TSource> source);
该方法基于IEnumerable接口,因此接受任何实现了IEnumerable接口的类型,例如数组、List、集合,甚至是Linq查询组合的结果。
示例一
下面给出一个示例,说明如何使用ToList()
方法将一个数组转换成一个List集合:
int[] nums = { 1, 2, 3, 4, 5 };
List<int> numList = nums.ToList<int>();
在这个示例中,我们首先定义了一个整型数组nums
,然后调用ToList()
方法将其转换成了一个整型List集合numList
。
示例二
我们来看一个稍微复杂一些的示例,它演示了如何从一个Linq查询中获取一个List集合:
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main(string[] args)
{
List<string> fruits = new List<string>() { "apple", "banana", "cherry", "durian", "elderberry" };
var query = from fruit in fruits
where fruit.Length > 5
select fruit;
List<string> result = query.ToList();
Console.WriteLine("Fruits with length > 5:");
foreach (string fruit in result)
{
Console.WriteLine(fruit);
}
}
}
在这个示例中,我们首先创建了一个字符串List集合fruits
,然后声明了一个Linq查询query
,它从fruits
中选择所有长度大于5的水果。
最后,我们调用ToList()
方法将query
的结果转换成了一个字符串List集合result
,并使用循环输出了其中的所有元素。
总结
总之,ToList()
方法十分方便便捷,它可以让我们轻松地将各种类型的序列转换成List集合,使我们更容易地处理和使用序列中的元素。请注意,该方法会创建新的List对象,适用于需要对原始序列进行修改或扩展的情况。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C# Linq的ToList()方法 – 将序列转换为列表 - Python技术站