Я пробовал использовать Stacks, используя arraylist, и получил следующую ошибку: метод push(int),pop(int) не определен дJAVA

Программисты JAVA общаются здесь
Anonymous
Я пробовал использовать Stacks, используя arraylist, и получил следующую ошибку: метод push(int),pop(int) не определен д

Сообщение Anonymous »

В моем коде я пытался выполнять операции со стеком, такие как push, pop и peek, используя методы Java с arraylist. Я реализовал код с логикой стека, которая имеет сложность o (1), но когда я запускаю свой код, я получаю сообщение об ошибке, что методы pop, push и peek не определены в классе стека. Если бы кто-нибудь мог помочь мне, где я ошибся, это было бы очень полезно. Спасибо.
Мой код :
import java.util.*;
public class StackClass {
class Stack{
ArrayList list = new ArrayList();
public static boolean isEmpty(){
return list.size() == 0;
}
}

//push
public static void push(int data){
list.add(data);
}

//pop
public static int pop(){
if(isEmpty()){
return -1;
}
int top = list.get(list.size() - 1);
list.remove(list.size() - 1);

return top;

}

//peek
public static int peek(){
if(isEmpty()){
return -1;

}
return list.get(list.size() - 1);

}

public static void main(String[] args) {
Stack s = new Stack();
s.push(1);
s.push(2);
s.push(3);
s.push(4);

while(!s.isEmpty()){
System.out.println(s.peek());
s.pop();
}
}
}


Я получаю такую ​​ошибку:
The method push(int) is undefined for the type StackClass.Stack
The method push(int) is undefined for the type StackClass.Stack
The method push(int) is undefined for the type StackClass.Stack
The method push(int) is undefined for the type StackClass.Stack
The method peek() is undefined for the type StackClass.Stack
The method pop() is undefined for the type StackClass.Stack


Подробнее здесь: https://stackoverflow.com/questions/790 ... e-method-p

Вернуться в «JAVA»