「java菜单树递归」java递归树结构
本篇文章给大家谈谈java菜单树递归,以及java递归树结构对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
java根据数据库生成菜单(递归)
不需要递归用一个特殊字符的算法来处理
比如
基本信息 1000
酒店管理 10001000
服务商管理 10002000
产品信息 2000
导游管理 20001000
物品管理 20002000
java递归遍历某个菜单下的菜单树
不太清楚你这个Menu是哪来的类,不过如果上文你的程序能执行的话,说明menu.getChilds()是个集合,应该带有size()的函数。你可以取出menu.getChilds()的大小,再从头到尾遍历它。
int count=menu.getChilds().size();
for(int i=0;icount;i++)
{
showMenu( ((Menu)menu.getChilds().get(i)) , 0 );
//我估计这些children是个list,可以顺序遍历;但也有
//部分可能是set,那样就得用iterator了。
}
Java递归如何正确输出树形菜单
首先我们要建立树节点的类:
[java] view plain copy
package com.tree;
public class Node {
private Integer id;
private Integer parentId;
private String name;
private String link;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getParentId() {
return parentId;
}
public void setParentId(Integer parentId) {
this.parentId = parentId;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getLink() {
return link;
}
public void setLink(String link) {
this.link = link;
}
}
输出树形菜单类:
[java] view plain copy
package com.tree;
import java.util.ArrayList;
import java.util.List;
public class Tree {
private StringBuffer html = new StringBuffer();
private ListNode nodes;
public Tree(ListNode nodes){
this.nodes = nodes;
}
public String buildTree(){
html.append("ul");
for (Node node : nodes) {
Integer id = node.getId();
if (node.getParentId() == ) {
html.append("\r\nli id='" + id + "'" + node.getName()+ "/li");
build(node);
}
}
html.append("\r\n/ul");
return html.toString();
}
private void build(Node node){
ListNode children = getChildren(node);
if (!children.isEmpty()) {
html.append("\r\nul");
for (Node child : children) {
Integer id = child.getId();
html.append("\r\nli id='" + id + "'" + child.getName()+ "/li");
build(child);
}
html.append("\r\n/ul");
}
}
private ListNode getChildren(Node node){
ListNode children = new ArrayListNode();
Integer id = node.getId();
for (Node child : nodes) {
if (id.equals(child.getParentId())) {
children.add(child);
}
}
return children;
}
}
java菜单树递归的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java递归树结构、java菜单树递归的信息别忘了在本站进行查找喔。