趣味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);
}
}
}