用JAVA语言用 List 实现多级菜单的打印,使用递归打印如下的输出结果
|手机
| |游戏手机
| |5G手机
| |拍照手机
|电脑
| |笔记本
| | |华硕笔记本
| | | |华硕i7
| | | |华硕i5
| | |联想笔记本
| | | |联想小新
| |一体机
| |台式机
|电器
|衣服
思路分析:
parentId 是设定的商品的级别,当商品Id 与 parentId 的数值相同时,说明该商品是parentId商品的子级,那么定义一级类目的parentId为0,建立一个treeMenu()方法,遍历建立的 List对象,
输出当parentId == 0时的目录,这时已经成功输出了所需要的一级类目,那么可以再一级类目下面寻找对应的二级,三级类目,这时需要用到另外一个循环childMenu(),在childMenu() 中把一级类目的Id以及建立的List对象作为实参传入,在childMenu() 中还是从头遍历建立的List对象,当parentId 等于我们传入的 一级类目的Id时,就是一级类目的子类目,这时把其对应的商品也输出,同时把得到的二级目录的paratId以及List对象作为实参传入,并继续调用childMene() ,这时可以持续调用,直至没有子目录, 循环调用结束,子目录也成功全部输出。
接下来看代码。
首先先建立一个要建立一个需要的菜单类
public class ProductType {
private Integ