根据每个元素类型过滤集合。
假设您有以下包含整数和字符串元素的列表 -
list.Add("Katie"); list.Add(100); list.Add(200);
登录后复制
过滤集合并仅获取字符串类型的元素。
var myStr = from a in list.OfType<string>() select a;
登录后复制
对于整数类型的工作方式相同。
var myInt = from a in list.OfType<int>() select a;
登录后复制
以下是完整的代码 -
示例
实时演示
using System; using System.Linq; using System.Collections; public class Demo { public static void Main() { IList list = new ArrayList(); list.Add("Katie"); list.Add(100); list.Add(200); list.Add(300); list.Add(400); list.Add("Brad"); list.Add(600); list.Add(700); var myStr = from a in list.OfType<string>() select a; var myInt = from a in list.OfType<int>() select a; Console.WriteLine("Strings..."); foreach (var strVal in myStr) { Console.WriteLine(strVal); } Console.WriteLine("Integer..."); foreach (var intVal in myInt) { Console.WriteLine(intVal); } } }
登录后复制
输出
Strings... Katie Brad Integer... 100 200 300 400 600 700
登录后复制