我的代码出了什么问题?我显然无法运行它。以下是我的编码。有人可以帮我找到错误吗?
实施队列以执行以下操作:
出列();
public class Queues {
public static void add(Queues <String>myQueue, String s) {
myQueue.enqueue(s);
public static void main(String[] args){
Queues myQueue = new Queues (20, 0, 0);
myQueue.Enqueue('a');
myQueue.Enqueue('b');
myQueue.Enqueue('c');
myQueue.Enqueue('d');
myQueue.Enqueue('e');
myQueue.Enqueue('f');
myQueue.Enqueue('g');
myQueue.Enqueue('h');
myQueue.Enqueue();
myQueue.Enqueue();
myQueue.Enqueue();
myQueue.Enqueue();
myQueue.Enqueue();
myQueue.Enqueue();
myQueue.Enqueue('i');
myQueue.Enqueue('j');
myQueue.Enqueue();
myQueue.Display();
}
}
class Queue{
int x;
char [] y;
int front, rear, w;
Queue (int a, b , c);
x = a;
y = new char[x];
front = b;
rear = c;
w = rear;
boolean CHK_Q_EMPTY()
return rear == 0;
}
boolean CHK_Q_FULL(){
return rear == x;
}
void Enqueue (char d){
y(rear) = d;
rear++;
w++;
}
void Dequeue(){
for (int z=1; z<rear; z++){
y[front]=y[z];
front++;
}
w--;
if(front == rear){
front = 0;
rear = w;
}
}
void display(){
for (int i=0; i<rear; i++)
System.out.println(y[i]);
}
}
答案 0 :(得分:0)
您无法在其他函数中定义命名函数。如果我是你,我会main
runnable
lambda表达式。
此外,方法CHK_Q_FULL
,Enqueue
,Dequeue
和display
访问未定义的变量。
Queues
需要一个带有三个参数的构造函数。默认构造函数永远不会超过零参数。 Queue
的构造函数需要一个正文。需要指定参数的类型。构造函数下面是三个访问未定义变量的语句。同样在main
方法中,您使用未定义函数Display
。您应该重载方法Enqueue。