BuildingTreeMaker

package com.zx.services;

import java.util.Iterator;
import java.util.List;

import com.zx.pojos.UserBean;
import com.zx.views.tree.TreeNode;

public class BuildingTreeMaker
{

public static TreeNode makerTree ( )
{
UserInfoDao dao = new UserInfoDao();
int cnt = dao.getTotalCount();
UserBean[] users = dao.getUsers(0, cnt);
TreeNode p = new TreeNode("", "");
if ( users == null || users.length == 0 ) return p;
for ( int i = 0 ; i < users.length ; i++ )
{
UserBean user = users[i];
String buildname = user.getBuilding();
TreeNode node = p.findChild(buildname);
TreeNode houseNoNode = new TreeNode(String.valueOf(user.getId()),
user.getHouseno());
if ( node == null )
{
TreeNode buildingNode = new TreeNode(String.valueOf(user
.getId()), user.getBuilding());
p.addChild(buildingNode);
buildingNode.addChild(houseNoNode);
}
else
{
node.addChild(houseNoNode);
}
}
return p;
}

public static void print ( TreeNode tn )
{
if ( tn.isLeaf() )
{
System.out.println(" " + tn.getKey() + "-" + tn.getName());
}
else
{
//System.out.println(tn.getKey() + "-" + tn.getName());
List<TreeNode> children = tn.getChildren();
for ( Iterator<TreeNode> it = children.iterator() ; it.hasNext() ; )
{
print(it.next());
}
}
}

public static void main ( String[] a )
{
TreeNode t = BuildingTreeMaker.makerTree();
BuildingTreeMaker.print(t);
}

}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章