七爪网源码交易平台 (七爪源码)

什么是 yield 在 c# 中?

您应该知道的第一件事是,当我们想要返回 Collection 时,我们使用 {yield。 当您使用 yield 时,您表明它出现的方法、运算符或 get 访问器是一个迭代器。

这是什么意思? 使用 yield 来定义迭代器消除了对方法中显式额外类的需求。

七爪源码:C#简要培训:产量

让我们在下面的实施会话中深入研究一个实践示例?

实施产量

不使用 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/小程序/网站源码资源!