C#虽然不会以真实条件进入

时间:2017-04-30 17:39:21

标签: c# while-loop

我的c#代码有点问题。

我有一个while循环:

{{1}}

所有变量都有值,但由于某种原因它不会进入while。

我暂时休息一下,看到父属性不是null,但它只是跳过整个时间。

任何想法为什么?或者我如何修改它来工作?

2 个答案:

答案 0 :(得分:2)

因为current.parent开头为空。

可能是因为current是你树中最顶层的,即没有孩子。 (或者你想称之为什么)

你问题中的代码非常含糊,但我想只是使用

solution.Add(current.move);
while(current.parent != null)
{     
      current = current.parent;
      solution.Add(current.move);
}

可能会有所帮助。

这可以解决您遇到的实际问题(除了不知道如何使用调试器之外;)

所以在这里你总是记录当前的移动,然后记录任何父移动。

也许看看用do..while循环重构这个!!

答案 1 :(得分:0)

在看到树中的每个节点都有一个空值(但节点的属性不是)之后,我改变了所有内容以使用Node的属性,最终起作用。

谢谢你们=)