gpt4 book ai didi

c# - ConvertAll(Guid.Parse) 是如何工作的?

转载 作者:行者123 更新时间:2023-11-30 14:40:55 25 4
gpt4 key购买 nike

首先我有这种线

List<Guid> ratingComparisonIds = ratingComparison.ConvertAll<Guid>(o => Guid.Parse(o));

然后 ReSharper 提示我可以将其转换为方法组。该操作的结果是这样的

List<Guid> ratingComparisonIds = ratingComparison.ConvertAll<Guid>(Guid.Parse);

我对语法感到困惑.. 它如何工作以及为什么工作?我的意思是 parse 方法没有参数。我会说魔术。

更新

更紧凑的转换

List<Guid> ratingComparisonIds = ratingComparison.ConvertAll(Guid.Parse);

最佳答案

它使用方法组转换。它正在做这样的事情:

// Very long-winded C# 1 syntax
Converter<String, Guid> converter = new Converter<String, Guid>(Guid.Parse);
List<Guid> ratingComparisonIds = ratingComparison.ConvertAll(converter);

// Simpler C# 2 syntax
Converter<String, Guid> converter = Guid.Parse;
List<Guid> ratingComparisonIds = ratingComparison.ConvertAll(converter);

现在内联变量,您将获得原始代码。这会让事情变得更清楚吗?

关于c# - ConvertAll<Guid>(Guid.Parse) 是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4826086/

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