是否有可以使用的组合枚举器?

格林曼

我班上有两个具有工作GetEnumerator方法的集合我也想GetEnumerator在这样的意义上提供我的课程:首先是在第一次收集后进行枚举,然后再进行第二次枚举。

准备好在ComboEnumeratorC#中使用某些类了吗?

好奇心的背景很少-第一个集合来自我对的实现Dictionary,第二个集合实际上只是单个元素(可选),包装在数组中。我想为其提供枚举器的类是NullDictionary从first派生的Dictionary所以我在寻找:

public override IEnumerator<KeyValuePair<K, V>> GetEnumerator()
{
    if (nullValue.HasValue)
        return ComboEnumerator.Create(
            new []{new KeyValuePair<K, V>(null, nullValue.Value)}.GetEnumerator(),
                base.GetEnumerator());
    else
        return base.GetEnumerator();
}

更新:我有自己的实现,这不是“如何实现XYZ”的问题。

佩德罗·佩雷斯(Pedro Perez)

我认为您正在寻找的这种方法不存在。如果您只想以标准方式枚举两个集合(返回第一个集合的每个项目,然后返回第二个集合的相同项目),我认为您可以使用Enumerable.Concat扩展方法。我看不到如何以更高效的方式做到这一点。
您可以看到Enumerable.Concat方法的实现

如果您想以非标准的方式枚举集合(有多种方法可以枚举这两个集合),我认为您是唯一可以做到这一点的.net框架无法为每种方式提供一种枚举两个集合的实现。 。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

是否可以使用调试器调试UnhandledExceptionFilters?

来自分类Dev

Rails 4.1是否可以使用枚举功能?

来自分类Dev

映射的find()是否可以使用带有参数的比较器?

来自分类Dev

是否可以使用带有sitecore标签的层次结构

来自分类Dev

是否可以使用Dropbox替代服务器后端?

来自分类Dev

是否可以使用枚举动态地获取静态类?

来自分类Dev

是否可以使用einsum转置所有内容?

来自分类Dev

是否可以使用带有多个JSON标签的结构?

来自分类Dev

是否可以使用仅CSS的容器包装器?

来自分类Dev

测试CanCan是否可以使用RSpec来查看没有模型的控制器页面

来自分类Dev

是否可以使用Python定义没有值的枚举?

来自分类Dev

是否有可以使用的“ GenerateJwt”方法?

来自分类Dev

是否有可以使用特定编译器编译的功能?

来自分类Dev

是否可以使用异步组合器创建boost :: signal2?

来自分类Dev

如果只有1个CPU,是否可以使用服务器主板上的所有内存插槽?

来自分类Dev

是否可以使用独特的几何着色器绘制带有线束的球体?

来自分类Dev

是否可以使用php调用CodeIgniter的控制器?

来自分类Dev

Windows Phone中是否可以使用Android的带有侦听器的构造?

来自分类Dev

是否可以使用编译指示覆盖C中的枚举基类型?

来自分类Dev

是否可以使用递归技术编写组合函数?

来自分类Dev

是否可以使用包含任何枚举值的整数类型

来自分类Dev

是否可以使所有GUI linux应用程序都可以使用X服务器工作?

来自分类Dev

是否可以使用仅CSS的容器包装器?

来自分类Dev

是否可以使用Identity保存带有枚举参数的角色?

来自分类Dev

Java枚举本身是否扩展了我可以使用的接口?

来自分类Dev

是否可以使用JNLP安装浏览器

来自分类Dev

是否可以使用不同的枚举类型作为非类型模板参数

来自分类Dev

Rails 5.2 是否可以使用路由来分配枚举值?

来自分类Dev

我可以使用 TypeScript 验证某个值是否在枚举条件内吗?

Related 相关文章

  1. 1

    是否可以使用调试器调试UnhandledExceptionFilters?

  2. 2

    Rails 4.1是否可以使用枚举功能?

  3. 3

    映射的find()是否可以使用带有参数的比较器?

  4. 4

    是否可以使用带有sitecore标签的层次结构

  5. 5

    是否可以使用Dropbox替代服务器后端?

  6. 6

    是否可以使用枚举动态地获取静态类?

  7. 7

    是否可以使用einsum转置所有内容?

  8. 8

    是否可以使用带有多个JSON标签的结构?

  9. 9

    是否可以使用仅CSS的容器包装器?

  10. 10

    测试CanCan是否可以使用RSpec来查看没有模型的控制器页面

  11. 11

    是否可以使用Python定义没有值的枚举?

  12. 12

    是否有可以使用的“ GenerateJwt”方法?

  13. 13

    是否有可以使用特定编译器编译的功能?

  14. 14

    是否可以使用异步组合器创建boost :: signal2?

  15. 15

    如果只有1个CPU,是否可以使用服务器主板上的所有内存插槽?

  16. 16

    是否可以使用独特的几何着色器绘制带有线束的球体?

  17. 17

    是否可以使用php调用CodeIgniter的控制器?

  18. 18

    Windows Phone中是否可以使用Android的带有侦听器的构造?

  19. 19

    是否可以使用编译指示覆盖C中的枚举基类型?

  20. 20

    是否可以使用递归技术编写组合函数?

  21. 21

    是否可以使用包含任何枚举值的整数类型

  22. 22

    是否可以使所有GUI linux应用程序都可以使用X服务器工作?

  23. 23

    是否可以使用仅CSS的容器包装器?

  24. 24

    是否可以使用Identity保存带有枚举参数的角色?

  25. 25

    Java枚举本身是否扩展了我可以使用的接口?

  26. 26

    是否可以使用JNLP安装浏览器

  27. 27

    是否可以使用不同的枚举类型作为非类型模板参数

  28. 28

    Rails 5.2 是否可以使用路由来分配枚举值?

  29. 29

    我可以使用 TypeScript 验证某个值是否在枚举条件内吗?

热门标签

归档