2013-10-14 19 views
0
import java.util.ArrayList; 

public class MyStack<T> { 

private ArrayList<T> stack; 

    // Copy constructor 
    public MyStack(MyStack<T> s) { 

     // i know its wrong 
     for(int i = 0; i < stack.size(); i++) { 
      this.stack.get(i) = s.stack.get(i); 
     } 
    } 
} 
+0

'得到()'和'设置()'是对立的。 – SLaks

+0

该类是通用的MyStack 以及ArrayList idk y它没有显示它 – user2877264

+0

仅供将来参考@ user2877264 - 此代码将无法成功编译,因为检索不能用作分配目标,只有一个变量能够。 –

回答

0

您是否尝试过调试?一个明显的建议是确保你引用了正确的堆栈。

+0

他有语法错误。 – SLaks

+0

可能是一个评论,而不是一个答案,但我怀疑它编译,所以你不能调试它。 –

+0

这应该是一个评论。我的错误 – newtonrd

3

如何

// Copy constructor 
public MyStack(MyStack<T> s) { 
    this.stack = new ArrayList<T>(s.stack);  
} 
+0

但它的私有ArrayList 堆栈;我需要复制所有元素 – user2877264

+0

这将复制堆栈中所有对元素的引用。你有什么疑问?当你尝试时发生了什么? –

+0

我这样做了\t this.stack = new ArrayList (); \t \t \t \t 为\t(INT I = 0; I user2877264