javatree(javatreeset排序)

华为云服务器特价优惠火热进行中!

2核2G2兆仅需 38 元;4核4G3兆仅需 79 元。购买时间越长越优惠!更多配置及优惠价格请咨询客服。

合作流程:
1、点击链接注册/关联华为云账号:点击跳转
2、添加客服微信号:cloud7591,确定产品方案、价格方案、服务支持方案等;
3、客服协助购买,并拉微信技术服务群,享受一对一免费技术支持服务;
技术专家在金蝶、华为、腾讯原厂有多年工作经验,并已从事云计算服务8年,可对域名、备案、网站搭建、系统部署、AI人工智能、云资源规划等上云常见问题提供更专业靠谱的服务,对相应产品提供更优惠的报价和方案,欢迎咨询。

本篇文章给大家谈谈javatree,以及javatreeset排序对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

微信号:cloud7591
如需了解更多,欢迎添加客服微信咨询。
复制微信号

本文目录一览:

java的JTree的使用方法,

JTree组件被用来以树的形式显示数据,一层套一层,看起来清晰明了,使用户很方便地就了解到各个节点之间的层次关系,可以很容易地找到相关的数据。

例如 Windows 系统的文件管理器,它就是一个典型的树层次结构。

JTree的构造函数:

·JTree() 建立一棵默认的树。

·JTree(Hashtable data) 利用Hashtable建立树。

·JTree(Object[] data) 利用数组建立树。

·JTree(TreeModel model) 利用TreeModel建立树。

·JTree(TreeNode root) 建立以root为根的树。

·JTree(TreeNode root,Boolean children) 建立以 root 为根的树,并设定是否允许有子节点。

·JTree(Vector value) 利用Vector建立树。

使用一个JTree可以简单地像下面这样表示:

import javax.swing.JFrame;

import javax.swing.JTree;

import javax.swing.event.TreeSelectionEvent;

import javax.swing.event.TreeSelectionListener;

import javax.swing.tree.DefaultMutableTreeNode;

 

public class TreeDemo {

    public static void main(String[] args) {

 

        // 创建没有父节点和子节点、但允许有子节点的树节点,并使用指定的用户对象对它进行初始化。

        // public DefaultMutableTreeNode(Object userObject)

        DefaultMutableTreeNode node1 = new DefaultMutableTreeNode("软件部");

        node1.add(new DefaultMutableTreeNode(new User("小花")));

        node1.add(new DefaultMutableTreeNode(new User("小虎")));

        node1.add(new DefaultMutableTreeNode(new User("小龙")));

 

        DefaultMutableTreeNode node2 = new DefaultMutableTreeNode("销售部");

        node2.add(new DefaultMutableTreeNode(new User("小叶")));

        node2.add(new DefaultMutableTreeNode(new User("小雯")));

        node2.add(new DefaultMutableTreeNode(new User("小夏")));

 

        DefaultMutableTreeNode top = new DefaultMutableTreeNode("职员管理");

 

        top.add(new DefaultMutableTreeNode(new User("总经理")));

        top.add(node1);

        top.add(node2);

        final JTree tree = new JTree(top);

        JFrame f = new JFrame("JTreeDemo");

        f.add(tree);

        f.setSize(300, 300);

        f.setVisible(true);

        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        // 添加选择事件

        tree.addTreeSelectionListener(new TreeSelectionListener() {

 

            @Override

            public void valueChanged(TreeSelectionEvent e) {

                DefaultMutableTreeNode node = (DefaultMutableTreeNode) tree

                        .getLastSelectedPathComponent();

 

                if (node == null)

                    return;

 

                Object object = node.getUserObject();

                if (node.isLeaf()) {

                    User user = (User) object;

                    System.out.println("你选择了:" + user.toString());

                }

 

            }

        });

    }

}

 

class User {

    private String name;

 

    public User(String n) {

        name = n;

    }

 

    // 重点在toString,节点的显示文本就是toString

    public String toString() {

        return name;

    }

}

Java怎么实现输出是一个tree结构

树节点类:

package cn.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;  

    }  

}

输出树形菜单类:

package cn.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() == null) {  

                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;  

    }  

}

测试类:

package zzj.test;  

  

import java.util.ArrayList;  

import java.util.List;  

  

import cn.com.tree.Node;  

import cn.com.tree.Tree;  

  

  

public class Test {  

  

    /** 

     * @param args 

     */  

    public static void main(String[] args) {  

        ListNode nodes = new ArrayListNode();  

          

        Node node1 = new Node();  

        node1.setId(1);  

        node1.setName("node1");  

        node1.setParentId(null);  

        node1.setLink(null);  

        nodes.add(node1);  

          

        Node node11 = new Node();  

        node11.setId(11);  

        node11.setName("node11");  

        node11.setParentId(1);  

        node11.setLink(null);  

        nodes.add(node11);  

          

        Node node111 = new Node();  

        node111.setId(111);  

        node111.setName("node111");  

        node111.setParentId(11);  

        node111.setLink(null);  

        nodes.add(node111);  

          

        Node node12 = new Node();  

        node12.setId(12);  

        node12.setName("node12");  

        node12.setParentId(1);  

        node12.setLink(null);  

        nodes.add(node12);  

          

        Node node2 = new Node();  

        node2.setId(2);  

        node2.setName("node2");  

        node2.setParentId(null);  

        node2.setLink(null);  

        nodes.add(node2);  

          

        Node node21 = new Node();  

        node21.setId(21);  

        node21.setName("node21");  

        node21.setParentId(2);  

        node21.setLink(null);  

        nodes.add(node21);  

          

        Node node3 = new Node();  

        node3.setId(3);  

        node3.setName("node3");  

        node3.setParentId(null);  

        node3.setLink(null);  

        nodes.add(node3);  

          

        Tree tree = new Tree(nodes);  

        System.out.println(tree.buildTree());  

    }  

}

java中的tree是什么意思

tree 英 [tri:]   美 [tri]  :n. 树;木料;树状图;宗谱;vt. 把?赶上树;使处于困境;把鞋型插入(鞋内)

短语

family tree 家族树 ; 家谱 ; 家庭树 ; 族谱

Suffix Tree [计] 后缀树 ; 后缀树实现 ; 字尾树

tree hyrax 树蹄兔属 ; 树蹄兔

Leftist tree 左偏树 ; 左倾树

Tree sitting 树坐 ; 国际常见的树坐

Tree spiking 树钉

Metric tree 度量树

Fenwick tree 树状数组

camphor tree [林] 樟树 ; [林] 樟脑树 ; 香樟树 ; 香樟

扩展资料

双语例句

1、You are absolutely correct. The leaves are from a bay tree

你说得很对,这是月桂树的叶子。

2、The peach tree is wormy.

桃树长虫了。

3、He dug a hole in our yard on Edgerton Avenue to plant a maple tree when I was born.

我出生的时候,他在埃杰顿大街我们家的园圃里挖了个坑,种了棵枫树。

4、China has the world's most ancient tree species--metasequoia.

中国有世界最古老的树种--水杉。

5、A vandal with a chainsaw cut down a tree.

一个故意破坏公物的人用链锯伐倒了一棵树。

关于javatree和javatreeset排序的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

发布于 2023-03-02 20:03:32
收藏
分享
海报
60
目录

    忘记密码?

    图形验证码

    复制成功
    微信号: cloud7591
    如需了解更多,欢迎添加客服微信咨询。
    我知道了