2013-10-14 2 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; г user2877264

Смежные вопросы