http://www.verejava.com/?id=1699459079815
package com.menu; import java.util.List; public class TestCategory { public static String level=""; public static void main(String[] args) { MenuManager mm=new MenuManager(); mm.add(new Menu(0,-1,"主控管理系统")); mm.add(new Menu(100,0,"主控管理")); mm.add(new Menu(101,0,"公共信息")); mm.add(new Menu(102,0,"本单位管理")); mm.add(new Menu(103,0,"下属管理")); mm.add(new Menu(104,0,"部门管理")); mm.add(new Menu(105,0,"职位管理")); mm.add(new Menu(10000,104,"部门类别")); mm.add(new Menu(10001,104,"部门信息")); List<Menu> menuList=mm.getMenuList(); for(int i=0;i<menuList.size();i++) { Menu menu=menuList.get(i); if(menu.getPid()==-1) { System.out.println(menu.getName()); showMenu(menu,menuList); break; } } } public static void showMenu(Menu parentMenu,List<Menu> menuList) { level+="----"; for(int i=0;i<menuList.size();i++) { Menu menu=menuList.get(i); if(menu.getPid()==parentMenu.getId()) { System.out.println(level+menu.getName()); showMenu(menu,menuList); } } level=level.substring(0,level.length()-4); } } package com.menu; public class Menu { private int id; private int pid; private String name; public Menu(int id, int pid, String name) { super(); this.id = id; this.pid = pid; this.name = name; } public int getId() { return id; } public void setId(int id) { this.id = id; } public int getPid() { return pid; } public void setPid(int pid) { this.pid = pid; } public String getName() { return name; } public void setName(String name) { this.name = name; } } package com.menu; import java.util.ArrayList; import java.util.List; public class MenuManager { private List<Menu> menuList=new ArrayList<Menu>(); public void add(Menu menu) { menuList.add(menu); } public List<Menu> getMenuList() { return menuList; } public void setMenuList(List<Menu> menuList) { this.menuList = menuList; } }
http://www.verejava.com/?id=1699459079815