当前位置:编程学习 > JAVA >>

关于一个递归的问题

--------------------编程问答-------------------- 我感觉的程序的逻辑有问题
循环和递归是解决同一类问题的,他们可以相互转换的。
你的while循环里面又加上递归,这要递归多少次啊,指数级往上增长啊。 --------------------编程问答--------------------    if(this.rs.getInt("isleaf") == 0) {
tree(stmt, this.rs.getInt("id"), level + 1);
}  
改成!=,都是叶子节点了还能继续向下展现? --------------------编程问答--------------------
引用 2 楼 fudongrifdr 的回复:
   if(this.rs.getInt("isleaf") == 0) {
tree(stmt, this.rs.getInt("id"), level + 1);
}  
改成!=,都是叶子节点了还能继续向下展现?


数据库里isleaf为0表示不是叶子节点。 --------------------编程问答-------------------- 哦,那你的tree方法,别传stmt,传conn,每次得到一个新的stmt --------------------编程问答--------------------
引用 4 楼 fudongrifdr 的回复:
哦,那你的tree方法,别传stmt,传conn,每次得到一个新的stmt

以前已经试过了,问题依旧。 --------------------编程问答-------------------- 你都没传入下一个主题的ID --------------------编程问答--------------------
引用 6 楼 fudongrifdr 的回复:
你都没传入下一个主题的ID

String sql = "select * from article where pid = " + id;
System.out.println(sql);
this.rs = stmt.executeQuery(sql);

while(this.rs.next()) {
str += "<tr><td>" + this.rs.getInt("id") + "</td><td>" +
   prestr + this.rs.getString("cont") + "</td></tr>";
   
     if(this.rs.getInt("isleaf") == 0) {
tree(stmt, this.rs.getInt("id"), level + 1);
补充:Java ,  Web 开发
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,