安照wanglh2000()  不行,
我知道原因了,vector取出来的是对象的副本,
当给他赋值时,他的副本的指针指到了 其它的对象,
但对他本身没有影响。但如何修改 vector中对象的值呢?

解决方案 »

  1.   

    public static void propertyoverride(Vector a, Object b) {
        for (int j = 0; j < a.size(); j++) {
                a.set(j, b);
    }
    }
    这样就可以改变vector中对象的值。
      

  2.   

    这是局部变量作用域的问题。第一个for循环中d跟b确实指向同一个对象,但它的有效区域仅限于第一个for循环;但你在第二个for循环中重新定义变量d并使之指向a中的元素d,所以此d非彼d!