因此,对于作业,我需要使用数组实现堆栈。我已经弄清楚了所有代码,但由于某种原因,每当我尝试使用我的 char 数组时,Java 都会说找不到它。这是我的堆栈类。
public class Stack
{
private int top;
public Stack ()
{
char []charArray = new char [50];
top = -1;
}
public void push(char c)
{
top++;
charArray[top] = c;
}
public void pop()
{
top--;
}
public char top()
{
return charArray[top];
}
public void makeNull()
{
top=-1;
}
public boolean isEmpty()
{
return (top==-1);
}
}
有人知道我为什么会出现这些错误吗?它不喜欢 push 和 top 中我引用 charArray 的行。
最佳答案
数组变量 charArray
在构造函数内声明为局部变量,因此对其他方法不可见。
您可以将其声明为成员字段:
private int top;
private char[] charArray;
public Stack ()
{
charArray = new char [50];
top = -1;
}
关于java - 我在 Java 中尝试将 Stack 实现为数组时不断收到 'cannot find symbol' 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26669864/