0

这里有两个例子:

我有一个包含 3 个项目的数组:宇宙、行星和大陆我想使用这样的 foreach 循环:

  foreach(var universe in Universe)
  {
       foreach(var planet in Planet)
       {
             foreach(var continent in Continent)
             { 
                 // here comes my code
              } } }

在这种情况下,数组包含 3 个元素,因此我需要 3 个 foreach 语句。

现在假设我在数组中添加了 2 个额外的项目(国家和州)必须有 5 个 foreach 循环。

但是如果数组包含 600 个项目怎么办:那么我需要编写 600 个 foreach 语句......

那么如何以编程方式解决这个问题呢?

  • 动态代码添加?
  • 递归代码(我对它们没有经验)
  • ...
4

1 回答 1

1

如果您有一个包含三个项目的数组,那么为了枚举这些项目,您应该只需要一个 foreach 循环。

List<Object> items = new List<Object> { Universe, Earth, Continent };
foreach (var item in items) { ... }

如果外部数组包含的对象各自实现,则只需要编写额外的嵌套 foreach 循环IEnumerable,并且您还需要枚举这些循环。如果没有看到您要解决的问题,就很难提出建议。但我认为您需要嵌套foreach结构的假设是不正确的。

于 2013-08-20T11:00:00.943 回答