我有一类节点查找嵌套列表中指定的字符串与递归
public class Node
{
public string Header { get; set; }
public string Number { get; set; }
public List<Node> Nodes { get; set; }
}
嵌套级别是四级。我想要实现的是在任何嵌套列表中查找下面的函数中指定的字符串。这里是一个函数:
public string getNumber(List<Node> currentList, string name)
{
string number = string.Empty;
foreach (var item in currentList)
{
if (item.Header == name)
{
number = item.Number;
return number;
}
}
if (number == string.Empty)
{
foreach (var item in currentList)
{
number = getNumber(item.Nodes, name);
return number;
}
}
return null;
}
它遍历,第一嵌套列表从第一个项目列表,但不能嵌套列表中的其余项目。任何人都可以给我一个提示,我的错误在哪里?
谢谢。
我没有在这里看到递归......也许你需要再次调用'getNumber'而不是'getNumberFromName'? – kuskmen
我的不好,应该getNumber,但无论如何它不工作,因为它应该。 – zari