class CloneableStack extends java.util.Stack implements Cloneable{
        public Object clone(){
            Stack stack = new Stack();
            for (int i = 0; i < this.size(); i++) {
                stack.push(get(i));
            }
            
            return stack;
        }
    }
    
    public void test() {
        CloneableStack myStack = new CloneableStack();
        MyVector.addElement(myStack);
    }

解决方案 »

  1.   

    你也可以在原STACK上WRAP一层,增加数据的函数同时复制一VECTOR作返回值
      

  2.   

    谢谢maowu,不过往向量里加元素应该是如下吧:
        MyVector.addElement(myStack.clone());
        还有,如果我入栈的对象也是动态变化的话,是不是应该把入栈对象也改成上面的样子,然后再入栈啊?也谢谢shuneng,可是你说的方法我没太看懂,我是初学JAVA啦~~
      

  3.   

    对,呵呵,忘记写.clone()了。