我可以得到任何有lambdas的terser吗?(Can I get any terser with lambdas?)

编程入门 行业动态 更新时间:2024-10-12 14:21:29
可以得到任何有lambdas的terser吗?(Can I get any terser with lambdas?)

这些天我用lambdas写了很多代码。

return _schema.GetAll<Node>() .ToList() .FindAll(node => node.Type == NodeType.Unmanaged) .Cast<Shape>() .ToList();

注意:GetAll()返回一个IList。

我可以得到任何表情吗?

I'm writing a lot of code with lambdas these days.

return _schema.GetAll<Node>() .ToList() .FindAll(node => node.Type == NodeType.Unmanaged) .Cast<Shape>() .ToList();

Note: GetAll() returns an IList.

Can i get any terser?

最满意答案

您可以使用Where替换ToList后跟FindAll。 在简单语句中使用lambda参数的流行标准是单个字符。 'node'可以重命名为'n'。 您的方法可以返回IEnumerable而不是IList。 然后,方法调用者可以根据需要调用ToList。

后:

return _schema.GetAll<Node>().Where(n => n.Type == NodeType.Unmanaged).Cast<Shape>(); You could replace the ToList followed by a FindAll with a Where. A popular standard with lambda parameters in simple statements is a single character. 'node' could be renamed to just 'n'. Your method could return an IEnumerable instead of a IList. The method caller could then call ToList if required.

After:

return _schema.GetAll<Node>().Where(n => n.Type == NodeType.Unmanaged).Cast<Shape>();

更多推荐

本文发布于:2023-08-06 09:20:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1446879.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:可以得到   lambdas   terser

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!