本文主要是介绍.Net C# Linq Select 方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在使用Linq的Select方法时,很多时候可以让我们少些一些循环遍历的代码,select方法可以对集合按照指定的条件筛选处理并最终返回一个新的集合。适用于一层循环并判断或运算等场景。
select方法的2个重载对应的委托:
Func<TSource, TResult> selector (传入泛型参数,返回泛型参数)Func<TSource, int, TResult> selector (第二个参数为集合中的索引)
参考代码:
public static void LinqSelectMain(){DataList data = new();Console.WriteLine($"ListInt-集合原始数据-{string.Join(' ', data.ListInt)}");Console.WriteLine($"ListStr-集合原始数据-{string.Join(' ', data.ListStr)}");{//简单运算var list = data.ListInt.Select(i => i > 4);Console.WriteLine(string.Join(' ', list));}{//简单运算var list = data.ListInt.Select(i => i + 1);Console.WriteLine(string.Join(' ', list));}{//对字符串遍历并返回将元素转为大写字母的新集合var list = data.ListStr.Select(s => s.ToUpper());Console.WriteLine(string.Join(' ', list));}{//可以在委托中完成逻辑运算并返回新的结果集合var list = data.ListInt.Select(i =>{if (i > 7)return 7;else if (i < 3)return 3;elsereturn i;});Console.WriteLine(string.Join(' ', list));}{//第二个重载委托中第二个参数为集合中的索引var list = data.ListInt.Select((i, index) =>{if (i > 7)return $"索引-{index}";else if (i < 3)return $"索引-{index}";elsereturn "不输出索引";});Console.WriteLine(string.Join(' ', list));}}
输出结果:
这篇关于.Net C# Linq Select 方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!