层级Java相关代码 java阶层( 二 )


java如何给有层级关系的JSON字符串做递归处理先递归出一个 node对象,再将node对象转换成json串 。直接进行字符串的json操作不建议 。
class Node{
private String id;
private String parentId;
private ListNode children;
public void addChildren(Node child){
getChildren().add(child);
}
public ListNode getChildren();
public String transformTojson(Node node ,StringBuffer jsonStr){
//递归
if(jsonStr ==null){
StringBuffer jsonStr=new ();
}
if(node.id!=null){
//拼接父节点json串
jsonStr.append(id:node.id,children:#children);
}
List childNodeList = node.getChildren();
StringBuffer childrenSB = new();
for( Node node :childNodeList){
childrenSB=transformTojson(node);
}
sonStr.replaceFirst("#children",childrenSB);
return jsonStr;
}
}
伪代码大概这样 。
transformTojson方法可以不自己写 , 直接使用第三方工具jar包的json转化方法,比如gjson 。
java代码:下列代码的作用是什么?请简述 , 面试题该程序的作用:进到指定目录,输出这个目录以及子目录下所有文件的文件名 , 通过\t的行数来区别层级 。
为了测试 , 我建立了这么一些文件:
D:\test
D:\test\test1
D:\test\test2
D:\test\test3.txt
D:\test\test1\t1.txt
D:\test\test1\t2.txt
D:\test\test2\t3.txt
其中,根路径为D:\test,其level为0;
level1中包含文件夹test1、文件夹test2和文件test3;
level2中包含文件t1.txt(属于文件夹test1)、文件t2.txt(属于文件夹test1)、文件t3.txt(属于文件夹test2) 。
则该程序的输出为:
其中:
t1.txt前有1行\t , 说明t1.txt位于第2层级
t2.txt前有1行\t , 说明t2.txt位于第2层级
t3.txt前有1行\t,说明t3.txt位于第2层级
test3.txt前没有\t,说明test3.txt位于第1层级
符合预期 。
另外为了再明显一些 , 我给输出再加点东西,这样会不会更明显一些:
其中,t1.txt位于的大括号中有一行\t和它的名字 , 表明了它确实在第2层级中,t2、t3同t1;test3.txt位于的大括号中只有它的名字表明了它确实在第1层级中
层级Java相关代码的介绍就聊到这里吧,感谢你花时间阅读本站内容 , 更多关于java阶层、层级Java相关代码的信息别忘了在本站进行查找喔 。

推荐阅读