c#树状多层结构
时间: 2023-07-27 11:16:52 浏览: 252
C#如何以树形结构来层级显示
5星 · 资源好评率100%
在C#中,树状多层结构可以使用类的嵌套来实现。下面是一个示例代码:
```
class TreeNode
{
public string Name { get; set; }
public List<TreeNode> Children { get; set; }
public TreeNode(string name)
{
Name = name;
Children = new List<TreeNode>();
}
public void AddChild(TreeNode child)
{
Children.Add(child);
}
}
class Tree
{
public TreeNode Root { get; set; }
public Tree(TreeNode root)
{
Root = root;
}
public void PrintTree(TreeNode node, int level)
{
Console.WriteLine(new string('-', level) + node.Name);
foreach (TreeNode child in node.Children)
{
PrintTree(child, level + 1);
}
}
}
class Program
{
static void Main(string[] args)
{
TreeNode root = new TreeNode("A");
TreeNode b = new TreeNode("B");
TreeNode c = new TreeNode("C");
TreeNode d = new TreeNode("D");
TreeNode e = new TreeNode("E");
TreeNode f = new TreeNode("F");
root.AddChild(b);
root.AddChild(c);
b.AddChild(d);
b.AddChild(e);
c.AddChild(f);
Tree tree = new Tree(root);
tree.PrintTree(tree.Root, 0);
}
}
```
在上面的代码中,我们定义了两个类:TreeNode和Tree。其中,TreeNode表示树中的一个节点,包含了名称和子节点列表;Tree表示整棵树,包含了根节点和打印树的方法。在程序中,我们创建了一个根节点A,然后添加了其它节点B、C、D、E、F。最后,我们将根节点传入Tree类中创建了一棵树,并调用了PrintTree方法打印整个树形结构。
输出结果如下:
```
-A
--B
---D
---E
--C
---F
```
可以看到,我们成功地创建了一棵树形结构,并且打印出了每个节点的名称和子节点。
阅读全文