【问题标题】:How Can a String Array Call Generic Select Method with <string,string>字符串数组如何使用 <string,string> 调用通用 Select 方法
【发布时间】:2015-12-05 22:13:15
【问题描述】:

我是泛型类和泛型方法的新手。我有一个简单的 cpode:

Func<string, string> selector = str => str.ToUpper();
string[] words = { "orange", "apple", "Article", "elephant" };
IEnumerable<String> aWords = words.Select(selector);

当我查看 Select 方法时,它说:

IEnumerable<String> IEnumerable<String>.Select<String, String>(Func<string,string> collector)

Select泛型方法如何知道String、String类型来了?它是否隐含来自“选择器”委托?我真的很困惑。

谢谢

【问题讨论】:

    标签: c#-4.0 extension-methods ienumerable generic-programming


    【解决方案1】:

    C# 编译器推断Select 的类型参数,因此您不必键入它们。它将这些类型刻录到已编译的程序集中。

    它是否隐含来自“选择器”委托?

    没错。 C# 有一些类型推断,因此您必须减少输入。

    Select 方法本身不知道是哪段代码调用了它。它只知道正确提供了类型参数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-28
      • 1970-01-01
      相关资源
      最近更新 更多