gpt4 book ai didi

c# - yield return 语句如何不返回任何元素?

转载 作者:太空狗 更新时间:2023-10-30 00:00:09 26 4
gpt4 key购买 nike

我正在练习删除二叉搜索树上的节点,我使用空模式为空链接创建了一个特殊类型 (NullNode),因此我可以向“空”添加一些理想的行为类型。 Node 类型和Nullnode 类型共享相同的INode 接口(interface),其中包括递归方法。

INode 接口(interface)包括 IEnumerable 递归方法,用于 PreOrder、InOrder 和 PostOrder 遍历,但我不希望 NullNode 返回任何元素(通过 yield return 语句)。

我能做什么?

我知道我可以使用一个不可能的 if 条件,然后在方法中放一个 yield return 语句,但我认为这个解决方案不好。应该有更好的方法。

最佳答案

使用 yield break 语句:

private static IEnumerable<INode> YieldEmpty()
{
yield break;
}

关于c# - yield return 语句如何不返回任何元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13213130/

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