什么是 yield 在 c# 中?
您应该知道的第一件事是,当我们想要返回 Collection 时,我们使用 {yield。 当您使用 yield 时,您表明它出现的方法、运算符或 get 访问器是一个迭代器。
这是什么意思? 使用 yield 来定义迭代器消除了对方法中显式额外类的需求。
让我们在下面的实施会话中深入研究一个实践示例?
实施产量
不使用 yield:
IEnumerable<object> FilterCategory(
IEnumerable<object> allCategories)
{
List<object> listCategories = new ();
foreach (var category in allCategories)
{
// Do something...
listCategories.Add(category);
}
return listCategories;
}
使用 yield:
IEnumerable<object> FilterCategory(
IEnumerable<object> allCategories)
{
foreach (var category in allCategories)
{
// Do something...
yield return category;
}
}
酷吧? 好吧,你一定在想。 到底有什么好处? 为什么我应该使用 yield 来稍微制作我的代码?
好吧,这不仅仅是为了让你的代码稍微好一点。 使用 yield 会使集合变得懒惰。 假设您只需要前五个项目。 按照您的方式,我必须遍历整个列表才能获得前五个项目。 使用yield,我只遍历前五个项目。
我希望你能顺利
结论
这就是产量以及它在 C# 中的工作方式! 你会每天使用收益吗? 你喜欢它的工作方式吗? 在评论中告诉我!
关注七爪网,获取更多APP/小程序/网站源码资源!
本文暂时没有评论,来添加一个吧(●'◡'●)