JAVA 基础无限极分类



package com.ui;


import java.util.List;


import com.dao.WxjflDao;
import com.entity.Wxjfl;


/**
 * 类描述:无限极分类----输出
 * @author 绿街猫
 * @date 2017年11月23日上午10:37:08   
 * @version :
 */
public class Infinity {

        public static void main(String[] args) {
                //从数据库表里得到级别为1的数据信息,放入集合
                List<Wxjfl> li = WxjflDao.get("and jb = 1");
                //调用递归的方法,把集合放进去
                recursion(li);
        }
        /**
        * 递归
        * @param List<Wxjfl> li
        */
        public static void recursion(List<Wxjfl> li){
                / /遍历接收的集合
                for (Wxjfl w : li) {
                        //for循环只是为了打印出来有层次感,在一级一级往下推时,前面添加空格
                        for (int i = 0; i <w.getJb()-1; i++) {
                        System.out.print(" ");
                        }
                //打印输出对象信息,分别对应数据库表四个列
                System.out.println(w.getWid()+" "+w.getWname()+" "+w.getFid()+" "+w.getJb());
                //再次查询第一个级别所对应的下面级别的信息;如第一级查完,继续查第二级,以此类推
                List<Wxjfl> ll = WxjflDao.get("and fid = "+w.getWid());
                //再次调用这个递归方法,把这个集合放进去继续查
                //当最后所接受的集合信息为null时,调用这个方法时,遍历也就不会运行。依次可以查询每一集下面对应的数据,直至最后无数据可查
                recursion(ll);
                }//------------------for (Wxjfl w : li) 结尾-----------------------------
        }//-------------------recursion结尾-----------------------------





}//----------------------Infinity结尾-----------------------------

猜你喜欢

转载自blog.csdn.net/qq_40369944/article/details/78633811