java 把一个list中的数据按照树结构排序

来源:互联网 发布:与大数据相关的股票 编辑:程序博客网 时间:2024/06/05 19:38
import java.util.ArrayList;import java.util.List;public class HList {static List<Node> list = new ArrayList<Node>();static List<Node> resultList = new ArrayList<Node>();public static class Node {public Node(int id, int pid) {this.id = id;this.pid = pid;}private int id;private int pid;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;}@Overridepublic String toString() {return "[id=" + id + ", pid=" + pid + "]";}}static {list.add(new Node(1,0));list.add(new Node(2,1));list.add(new Node(3,2));list.add(new Node(4,2));list.add(new Node(5,1));list.add(new Node(6,5));list.add(new Node(7,1));}public static void sortList(List<Node> list,int id) {for (Node node :list) {if (node.getPid() == id) {resultList.add(node);sortList(list,node.getId());}}}/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubsortList(list,0);System.out.println(resultList);}}

0 0