首页 > 其他 > 详细

递归用例

时间:2015-12-18 14:32:03      阅读:158      评论:0      收藏:0      [点我收藏+]
private void createReplyTree(List<CommentReplyVo> commentReplyVoList, List<CommentReply> replyList) {
if (org.apache.commons.collections.CollectionUtils.isNotEmpty(replyList)) {
List<CommentReply> leftReplyList = new LinkedList<CommentReply>();
leftReplyList.addAll(replyList);

for (CommentReply reply : replyList) {
CommentReplyVo replyVo = transform(reply);
if (reply.getParentReplyId() == null) {//parentReplyId为NULL,则表示是对评论的回复
commentReplyVoList.add(replyVo);
leftReplyList.remove(reply);
}
}

addReplyTreeNode(commentReplyVoList, leftReplyList);
}
}

private void sortReplyTree(List<CommentReplyVo> commentReplyVoList, List<CommentReply> replyList) {
if (org.apache.commons.collections.CollectionUtils.isNotEmpty(replyList)) {
List<CommentReply> leftReplyList = new LinkedList<CommentReply>();
leftReplyList.addAll(replyList);

for (CommentReply reply : replyList) {
CommentReplyVo replyVo = transform(reply);
if (reply.getParentReplyId() == null) {//parentReplyId为NULL,则表示是对评论的回复
commentReplyVoList.add(replyVo);
leftReplyList.remove(reply);
}
}

addReplyTreeNode(commentReplyVoList, leftReplyList);
}
}

private void addReplyTreeNode(List<CommentReplyVo> replyVoList, List<CommentReply> replyList) {
if (org.apache.commons.collections.CollectionUtils.isNotEmpty(replyVoList) && org.apache.commons.collections.CollectionUtils.isNotEmpty(replyList)) {

List<CommentReply> leftReplyNodeList = new LinkedList<CommentReply>();
leftReplyNodeList.addAll(replyList);

for (CommentReplyVo replyVo : replyVoList) {
for (CommentReply reply : replyList) {
if (reply.getParentReplyId() != null && reply.getParentReplyId().equals(replyVo.getId())) {
replyVo.getCommentReplyVos().add(transform(reply));
leftReplyNodeList.remove(reply);
}
}
}

for (CommentReplyVo replyVo : replyVoList) {
addReplyTreeNode(replyVo.getCommentReplyVos(), leftReplyNodeList);//递归调用
}
}
}

 

递归用例

原文:http://www.cnblogs.com/itjiandan/p/5056833.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!