读书人

一个弱智的有关问题

发布时间: 2012-06-29 15:48:47 作者: rapoo

一个弱智的问题
我想用java写个二叉树 以下是其中一部分:

public class binaryTree {
class node{
int value;
node left;
node right;

}
node root=null;
//一下是函数
......
......
}

其中我想做插入,但是不好使,我经过调试 已经把不好使的原因定在一个点上了,一下是简单化的代码:

public void insertNode(node p, node n){
p=n;
}

public void insert(int num){
node newNode=new node();
newNode.value=num;
newNode.left=newNode.right=null;
insertNode(root,newNode);
}
以上的代码只是插入的部分,我做调试用的。
现在的问题是这样 目前只考虑 就加一个节点到root上,但为什么后来测试root总是空的。
也就是在 insert()里 root那个参数 传不到 insertNode()这里
如果我要是把 insertNode()里的 p换成root 那么 新节点就能插入到root了。但是 我传参数传的就是root啊, p就应该是root啊,为什么就不好使呢。
请大家帮助,谢谢!



[解决办法]
这个问题就和下面的问题是一样的:

Java code
public class Test2{    public static void fun(int num1, int num2)    {        num1 = num2;    }        public static void main(String[] args)    {        int num1 = 1;        int num2 = 2;        fun(num1, num2);        System.out.println(num1);    //函数内部只是对形参进行了修改,对实参无影响,所以打印出来的num1还是1,不是2    }} 

读书人网 >J2SE开发

热点推荐