Когда я пытаюсь проверить это; например, если я нажимаю 4 элемента, а затем создаю цикл for:Действительно ли мой метод Pop или Push в моем классе Stack написан неправильно?
for(int i=0; i<=stack.size(); i++){
System.out.println(stack.pop());
}
Он не выводит последний элемент. Это проблема с моим методом pop?
public void push(E element){
top= new Node<E>(element,top);
size++;
}
public E pop(){
E popped;
if(this.isEmpty()){
throw new EmptyStackException();
}
popped=top.data;
this.setTop(top.next);
size--;
return popped;
}
Я думаю, вам нужно показать весь класс. Использование '<=', а не '<' должно вызывать исключение. –
Сколько элементов вы ожидаете напечатать? BTW, вы повторяете 'stack.size() + 1 раз ... –
пожалуйста, более понятный код более –