gpt4 book ai didi

c# - Lambda表达式(扩展函数Select是怎么定义的?)

转载 作者:行者123 更新时间:2023-11-30 20:08:51 24 4
gpt4 key购买 nike

var numbers=new int[]{1,2,3};
var numbers1=numbers.Select(n=>n);
var numbers2=numbers.Select(n=>n.ToString());
var numbers3=numbers.Select(n=>new {Number=n, Even=n%2==0});

扩展函数 SELECT 的输出怎么可能是任意类型的?

最佳答案

这是一个generic使用以下签名定义的扩展方法:

public static IEnumerable<Tresult> Select<TSource, TResult>(
this IEnumerable<TSource> source,
Func<TSource, TResult> selector);

利用源和选择器参数中存在的类型信息,编译器可以推断出使用的类型,因此您无需显式命名它。

关于c# - Lambda表达式(扩展函数Select是怎么定义的?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6643287/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com