Eclipse未运行Java代码
对于Java我真的很陌生,开始自己研究它....我下载了netbeans和Eclipse,并且这两个给了我相同的结果..他们不运行代码(卡住运行)既不让我调试它 - Eclipse调试器和Netbeans - 没有响应:?我不知道什么是错..和我没有线索,我不能调试..Eclipse未运行Java代码
这里是我的代码:我试着检查回文:
package ClassQueue;
class Stack {
private Object[] Stack_Array = null;
public int top = 0;
public Stack(int size) {
top = 0;
Stack_Array = new Object[size];
}
public Stack() {
this(100);
}
protected void finalizer() {
Stack_Array = null;
}
final public boolean empty() {
return top == 0;
}
final public boolean full() {
return top == Stack_Array.length;
}
public void push(Object token) {
if (!full()) {
Stack_Array[top] = token;
top++;
}
}
public Object pop() {
Object Value_return = -999;
if (!empty()) {
Value_return = Stack_Array[top];
top--;
}
return Value_return;
}
}//end of Class_Stack
class Queue {
private Object[] Queue_Array = null;
private int Front = 0;
private int Rear = 0;
public Queue(int size) {
Front = Rear = 0;
Queue_Array = new Object[size];
}
public Queue() {
this(100);
}
protected void finalizer() {
Front = Rear = 0;
Queue_Array = null;
}
final public boolean empty() {
return Front == Rear;
}
final public boolean full() {
return Rear == Queue_Array.length;
}
public void queueAdd(Object token) {
if (!full()) {
Queue_Array[Rear] = token;
Rear++;
}
}
public Object queueDelete() {
Object Value_return = -999;
if (!empty()) {
Value_return = Queue_Array[Front];
Front++;
return Value_return;
}
return Value_return;
}
}//end of Class_Queue
public class ClassQueue {
public static void main(String[] args) {
int i = 0;
String Value_1 = "ABBA";
Stack Value_1_Stack = new Stack(Value_1.length());
Queue Value_1_Queue = new Queue(Value_1.length());
while (i < Value_1.length()) {
Value_1_Stack.push(Value_1.charAt(i));
Value_1_Queue.queueAdd(Value_1.charAt(i));
}
i = 0;
while (Value_1_Stack.pop() == Value_1_Queue.queueDelete()) {
i++;
}
if (i == Value_1.length()) {
System.out.println("Palindrome");
} else {
System.out.println("NOT");
}
}//end of main
}//end of ClassQueue
你有一个无限循环这里i
没有被增加:
while (i < Value_1.length()) {
Value_1_Stack.push(Value_1.charAt(i));
Value_1_Queue.queueAdd(Value_1.charAt(i));
}
也不要超过String
Value_1
长度:
while (i < Value_1.length() - 1) {
Value_1_Stack.push(Value_1.charAt(i));
Value_1_Queue.queueAdd(Value_1.charAt(i));
i++;
}
另外:使用变量名称的Java命名约定。
没有注意到:s – geekybedouin 2013-04-28 18:09:57
不用担心,通过设置断点学习在eclipse中使用调试器。这对于发现这些类型的问题很有用 – Reimeus 2013-04-28 18:19:17
您不能使用包名称的名称创建类。
运行程序 更改软件包名称。
对于ClassQueue在同一个包中创建另一个ClassQueue.java文件。
要调试程序:运行>调试
这会给你的环境进行调试 更改视图:窗口>显示视图>调试
你可以请出示错误? – 2013-04-28 18:01:10
你必须使用栈和队列吗?或什么是最简单的? – smttsp 2013-04-28 18:01:36
我必须使用:s 我不能调试,不知道错误在哪里:s – geekybedouin 2013-04-28 18:09:20