趣味Java_001

趣味java_001

String[] ms = {“01-02”,”01-02-03”,”01-02-03-04”,”01-02-01”,”01-02-02”,”01-03-01”,”02-01”,”02-01-02-03”,”03”};

  • 将上面数组合成树形结构的对象(对象结构不限制)

代码块

代码块语法遵循标准markdown代码,例如:

    public static void treePrint(String[] treeStr){
        if(treeStr != null){

            Map<String, Object> map = new HashMap<String, Object>();
            for(int i=0; i<treeStr.length; i++){
                put(treeStr[i], map);
            }
            String json = JSONUtil.toJSONString(map!=null?map:"");
            System.out.println(json);
        }

    }
    @SuppressWarnings("unchecked")
    public static void put(String treeStr,Map<String, Object> map){
        if(treeStr != null){
            String[] tree = treeStr.split("-");
            if(tree[0].length()>0){
                Map<String, Object> nmap =(Map<String, Object>) map.get(tree[0]);
                if(nmap == null){
                    nmap = new HashMap<String,Object>();
                    map.put(tree[0], nmap);
                }
                if(tree.length > 1){
                    put(treeStr.substring(treeStr.indexOf("-")+1),  nmap);
                }
            }else{
                put(treeStr.substring(treeStr.indexOf("-")+1),  map);
            }
        }
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值